我感觉不管是在工作中还是在学习Python的时候,都会到处碰壁,这都是很常见的,今天把会在工作中或者学习上的一些技术点总结了一下,希望此篇文章能帮到你度过难题,走出迷雾。再给大家分享之前呢,有什么不懂的问题,都可以在群里踊跃发言,需要啥资料随时可以私信小编,也可以私信小编你想要获取的资料。小编期待大家一起交流讨论,。各种入门资料啊,进阶资料啊,框架资料啊 爬虫等等,都是有的,风里雨里,小编等你。
现在学习Python的小伙伴中,起码有一半以上的在学习爬虫。
你问为什么会有这么多人学习爬虫?
因为爬虫很简单呀,而且效果非常的明显,爬取网站小姐姐的照片,说批量下载就批量下载,好不含糊!是不是效果非常的明显?!
为什么说它简单呢,因为爬取同一个网站,可以用四种方法实现,一般掌握一种就能那网站数据爬取下来,但是他有四种方法,那不是我想用什么姿势就用什么姿势?!学习资料也可以加下Python扣扣裙:3零4零5零799自己下载学习下。
一、工欲善其事必先利其器
1. F12:快捷键,(更多工具——开发者工具)。可以直接查看当前页面的html结构。有一点要注意,当前页面的html结构可能是Js动态生成的。比如淘宝网页的Josn数据源,但在开发者工具下是HTML结构。这个时候使用鼠标右键——查看源代码,可以看到json数据。
2.element选择键,F12后,下图中标示的方框内选项可以直接在页面中检索到对应的HTML标签位置——即在页面中点击选取。
3.console控制台,在这里可以看到一些与服务器的交互信息,上图中蓝色所指为清空,在此界面下,点击网页上的链接、按键或是F5刷新,可以看到与网页的交互信息。点击相应console下新出现的链接,可直接跳转到对应信息条目下。动态网页这个工具有很大的帮助,更多信息看第4条。控制台下可以输入一些变量函数,但因为没用到,所以没太多研究。有了解的可以分享下。
4.动态网页下,console控制台会出现一些链接,注意前面的信息:XHR。在这里插一点介绍,了解AJAX的小朋友可直接跳过。
常用到的就这些
二、磨刀不误砍柴工
静态网页:静态网页以及少量表单交互的网站可以使用如下的技术路线:
requests + BeautifulSoup + select css选择器
requests + BeautifulSoup + find_all 进行信息提取
requests + lxml/etree + xpath 表达式
requests + lxml/html/fromstring + xpath 表达式
动态网页。简单动态网页,需要有点击或者提交的可以参考selenium + phantomJS组合使用。
很多人觉得爬虫有点难以掌握,因为知识点太多,需要懂前端、需要python熟练、还需要懂数据库,更不用说正则表达式、XPath表达式这些。