python爬虫方法实例分析


这篇文章主要介绍“python爬虫方法实例分析”,在日常操作中,相信很多人在python爬虫方法实例分析问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”python爬虫方法实例分析”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!1、Requests库:使用原理和方法
2、BeautifulSoup库:使用原理和方法
3、Requests库和BeautifulSoup库组合应用:举例实践Requests库输出如下图:
有时候爬虫需要加入请求头来伪装成浏览器,以便更好抓取数据,在开发者工具中点击Network并且选择name,然后查看headers下拉查看到:User-Agent请求头的使用方法:Requests库错误和异常主要有以下4种:
1、Requests抛出一个ConnectionError异常,网络问题(如DNS查询失败、拒绝连接等)
2、Response.raise_for_status()抛出一个HTTPError异常,原因为HTTP请求返回了不成功的状态码(网页不存在,返回404错误)
3、Response抛出一个Timeout异常,原因为请求超时
4、Response抛出一个TooManyRedirects异常,原因为请求超过了设定的最大重定向次数
所有异常继承自:requests.exceptions.RequestException
为了避免异常:BeautifulSoup库BeautifulSoup库可以轻松解析Requests库请求的网页,并把网页源代码解析为Soup文档,以便过滤提取数据。输出Soup文档按照标准缩进 香港云主机格式结构输出,为结构化的数据,为数据的过滤提取做好准备。注意:BeautifulSoup库官方推荐使用lxml作为解析器,因为效率更高。
解析得到的Soup文档可以使用find()和find_all()方法及selector()方法定位需要的元素。find_all(tag, attibutes, recursive, text, limit, keywords)
find(tag, attibutes, recursive, text, keywords)
备注:常用前两个参数1、find_all()方法
2、find()方法
3、selector()方法
soup.selector(div.item>a>h2)#括号内容通过Chrome复制得到
(1)鼠标定位到想要提取的数据位置,右击,在弹出的快捷菜单中选择”检查“命令
(2)在网页源代码中右击所选元素
(3)在弹出的快捷菜单中选择Copy selector.
Requests库和BeautifulSoup库组合应用:举例实践实践案例1:爬取北京地区短租房信息1、爬虫思路分析
(1)本节爬取小猪短租网北京地区短租房10页信息。通过手动浏览,确认前4页网址如下:
http://bj.xiaozhu.com/
http://bj.xiaozhu.com/search-duanzufang-p2-0/
http://bj.xiaozhu.com/search-duanzufang-p3-0/
http://bj.xiaozhu.com/search-duanzufang-p4-0/
把第一页网址改为:
http://bj.xiaozhu.com/search-duanzufang-p1-0/后也能正常浏览,因此只需要更改p后面的数字就可以了,以此来构造10页网址
(2)本次爬虫在详细页面中进行,因此先需爬取进入详细页面的网址链接,进而爬取数据
(3)需要爬取的信息有:标题、地址、价格、房东名称、房东性别和房东头像的链接
到此,关于“python爬虫方法实例分析”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注开发云网站,小编会继续努力为大家带来更多实用的文章!

相关推荐: U盘启动显示Starting cmain()…错误怎么办

小编给大家分享一下U盘启动显示Starting cmain()…错误怎么办,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1、U盘启动盘兼容性问题导致解决方法:我们可以重新使用开发…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

Like (0)
Donate 微信扫一扫 微信扫一扫
Previous 07/14 12:49
Next 07/14 12:49

相关推荐