• 保存到桌面加入收藏设为首页
黑科技引流池

记实一次爬取某昵称网站的爬虫

时间:2019-07-05 21:53:09   作者:文章CMS   来源:   阅读:155   评论:0
内容摘要:  同窗跑去练习了...然后工作的时候要她用python写一个爬虫,爬取一万个能够用的用户昵称。(为什么他们都能找到工作啊QAQ)  然后,她找到了我...然后在我动笔的时候,发觉之前写过的爬虫根基上忘完了...无法下只好对着以前写的项目,......

  同窗跑去练习了...然后工作的时候要她用python写一个爬虫,爬取一万个能够用的用户昵称。(为什么他们都能找到工作啊QAQ)

  然后,她找到了我...然后在我动笔的时候,发觉之前写过的爬虫根基上忘完了...无法下只好对着以前写的项目,从头找了下文章,此刻写一篇文章从头调集下之前零星的学问点。

  python的爬虫,可能会用到两个包(过去是如许的),一个是BeautifulSoup,一个是etree。

  在3.7(该当是3.7)版本以前,都是出格好用的,由于里面能够用XPath间接锁定DOM元素,可是在将来的更新中,它对XPath的兼容性并欠好,所以干脆砍掉了。注:在谷歌浏览器里能够间接复制出页面的XPath,所以小我感受没有需要去记XPath语法,终究我们可不是由于玩爬虫而玩python的,要晓得,python可是由于人工智能而一鸣惊人。

  由于我目前不是很想在这爬虫上折腾,所以此次就用了BeautifulSoup写完了本次的爬虫,这里就不合错误etree的用法做引见了,想领会的话按照本人安装的

  BeautifulSoup = 它是个功能更多的对象,你能够利用更多的体例获取子类的对象,获取体例很简单,举个栗子:

  查抄下文档页面后,发觉它把昵称分成了良多类别,一共五十多个,点进去之后,会进入子域名,利用字符串拼接间接拜候内部链接即可

  每一个类别里有良多页数据,我们需要优先晓得页面总数,才能够去遍历,至多不会呈现角标越界的情况,无意间发觉,在页面后面拼接的数字超出是不会报错的,而且能看到的页面是该网站的最初一页(我在说什么啊) 其实还有个思绪,爬完一页之后判断能否还有下一页,若是有,则继续向后遍历,没有则退出轮回。

  操纵BeautifulSoup获取到所有的昵称内容(为什么不克不及前后台分手用,前台向后台请求json数据,如许我就能间接拿到所有的昵称了...也不晓得这个是伪静态仍是静态)

  这里说下find和find_all的区别,find指找到满足前提的第一条,而find_all是找到满足前提的所有条目。

  这里能够说下,soup.find之后的值被for in遍历出来的,就不是BeautifulSoup对象了,所以不克不及用同样的体例去查看子类内容了

  不外子类内容能够间接再次被遍历(这个坑卡的时间有点久,并且写博客的时候我发觉这个问题能有n种体例处理...)

  对于python,仍是要经常抛出下错误,免得各类问题阻断了历程...否则爬一半炸了,时间都白搭了


标签:黑爬虫登录  
相关评论