这种飞python爬虫都能爬什么人能吃吗

最近老板让搞pythonpython爬虫都能爬什么提取地图中水库位置。在开展下一段探索前先记一些心得体会。

一、工欲善其事必先利其器

想要爬取网站上的信息必须有一个好的工具。firefox和chrome都有不错的工具用chrome比较多,主要讲一下它的使用喜欢探索细节的小伙伴移到下面的链接:《》以及《》。我在这儿介绍一些高頻使用的的功能

1.F12:快捷键,(更多工具——开发者工具)可以直接查看当前页面的html结构。有一点要注意当前页面的html结构可能是Js动态苼成的。比如淘宝网页的Josn数据源但在开发者工具下是HTML结构。这个时候使用鼠标右键——查看源代码可以看到json数据。

2.element选择键F12后,下图Φ标示的方框内选项可以直接在页面中检索到对应的HTML标签位置——即在页面中点击选取


3.console控制台,在这里可以看到一些与服务器的交互信息上图中蓝色所指为清空,在此界面下点击网页上的链接、按键或是F5刷新,可以看到与网页的交互信息点击相应console下新出现的链接,鈳直接跳转到对应信息条目下动态网页这个工具有很大的帮助,更多信息看第4条控制台下可以输入一些变量函数,但因为没用到所鉯没太多研究。有了解的可以分享下

4.动态网页下,console控制台会出现一些链接注意前面的信息:XHR。在这里插一点介绍了解AJAX的小朋友可直接跳过。它是js进行http通讯的接口现在也有新的版本,其实现动态刷新的工具喜欢细节的看下面的链接《》和《》以及《》。好回到chrome工具点击console下的链接后(下图中1),跳转到Network下对应的信息文本会有几秒钟的变色,找不到的请注意上面的filter选项(下图中2)network下各字段的一些信息,更多请看本段开头链接这儿讲两个有用的:在name字段(下图中3)下点击鼠标左键,可查看返回的response信息;点击右键可以复制curl信息,這点比较重要待会有讲到。


常用到的就这些有其他的以后再更新。

这点体会太深了我以前做过网页,了解其中的逻辑(如有需要了解网页及网页结构的小伙伴强烈推荐《》)。对python编程也算是熟悉吧然后我就直接上手去搞python爬虫都能爬什么,python爬虫都能爬什么多是第三方库里面的一些参数的使用是必须了解其中意义的,不然很容易走弯路我因此浪费了些时间。所以强烈建议:应该先抽出些时间了解這些常用到的工具的基本知识事实上,pythonpython爬虫都能爬什么的这些库函数许多是相似的了解起来并不费太多时间。

1.静态网页:静态网页以忣少量表单交互的网站可以使用如下的技术路线:

requests + bs4 + re——分别是网页下载、BeautifulSoup提取网页结构信息和正则表达式这三个为对应python库名,网上相关內容很多

scrapy——是一种python爬虫都能爬什么模块,可以配合re一块使用也比较容易了解。以上内容的学习需要感谢Mooc网站北京理工大学的课程《》简单全面的介绍了静态python爬虫都能爬什么的使用。

2.动态网页简单动态网页,需要有点击或者提交的可以参考selenium + phantomJS组合使用selenium是模拟浏览器操作的工具,phantomJS则是没有用户交互界面的“浏览器”你可以认为是一种模拟用户点击操作的工具组合,来实现与服务器的交互

我爬取的昰网页地图中的信息,所以要更复杂一些这也是下一阶段需要探索的东西,网上的资料也不是很多不过现在也不是毫无头绪:对动态網页的逆向工程也是可以获取数据的。动态网页是使用JS动态加载的在chrome工具中点击console工具,查看post的XHR信息点击XHR返回信息的右键,可以查看curl將此链接放到浏览器的地址栏,可以直接看到返回的json信息这儿有个关键词:curl

当然,在没有出结果之前还不能确定现在的思路对于不对對于复杂的动态网页,还需要更多的探索先在此做个过去的总结,也欢迎了解和正在了解的给些意见

点击上方“程序人生”选择“置顶公众号”

第一时间关注程序猿(媛)身边的故事

Python追随者,曾无意间利用微信好友男女比例证明了自己的程序员身份个人公号:C与Python实戰

原文详见「阅读原文」。如需转载请联系原作者授权。

上一篇文章中我们已经抓取了智联招聘一些信息但是那些对于找工作来说还昰不够的,今天我们继续深入的抓取智联招聘信息并分析本文使用到的第三方库很多,涉及到的内容也很繁杂请耐心阅读。

本节内容為此版本的重点

我们对各个阶段工资的占比进行统计,分析该行业的薪资分布水平前面我们已经把数据保存到csv文件里了,接下来要读取salary列:

 
从结果可以看出除了第一项,其他的都为平均工资但是此时的工资为字符串,为了方便统计我们将其转换成整形:
 
我们用直方圖进行展示:


从图中可以看出工资分布的情况,这样在你找工作时可以做一个参考

4.2 职位描述词频统计

 
对职位描述词频统计的意义是可以叻解该职位对技能的基本要求,如果正在找工作可以估计一下自己的要求是否符合该职位;如果想要一年后换工作,那么也可以提前做恏准备迎接新的挑战。
词频统计用到了 jieba、numpy、pandas、scipy库如果电脑上没有这两个库,执行安装指令:
 
 
前面已经将职位描述保存到txt文件里了现茬我们将其读出:
 
 
从结果可以看出:“岗位职责”、“参与”、“公司”、软件产品“、”的“、”和“等单词并没有实际意义,所以我們要将他们从表中删除
 
下面引入一个概念:stop word, 在网站里面存在大量的常用词比如:“在”、“里面”、“也”、“的”、“它”、“为”这些词都是停止词这些词因为使用频率过高,几乎每个网页上都存在所以搜索引擎开发人员都将这一类词语全部忽略掉。如果我们嘚网站上存在大量这样的词语那么相当于浪费了很多资源。
在百度搜索stpowords.txt进行下载放到py文件同级目录。接下来测试一下:
 
从结果看出那些常用的stop word比如:“的”、“和”、“可”等已经被剔除了,但是还有一些词如“岗位职责”、“参与”等也没有实际意义如果对词频統计不产生影响,那么就无所谓在后面统计时再决定是否对其剔除。
 
重头戏来了词频统计使用numpy
 
可以看出,某些词语还是影响了统计結果我将以下stop word加入stopword.txt中:
开发、熟悉、熟练、精通、经验、工作、负责、能力、有限、相关、岗位职责、任职、语言、平台、参与、优先、技术、学习、产品、公司、熟练掌握、以上学历

 

 
这样基本上就是对技能的一些要求了,你也可以根据自己的需求再去修改stopword.txt已达到更加完媄的效果

4.2.4 词频可视化:词云


 
词频统计虽然出来了,可以看出排名但是不完美,接下来我们将它可视化使用到wordcloud库,详细介绍见 github 使用pip install wordcloud進行安装。
 
运行效果图如下(左图为原图右图为生成的图片):

至此,词频统计及其可视化完成
本例中进行了两种数据分析,虽为进階版但是还是有很多可以继续发挥的地方:
  • 分析工作年限和工资的关系并展示、预测

  • 统计不同工作岗位的薪资差别

  • 利用多线程或多进程提升效率

 
有兴趣的可以尝试做一下。
「若你有原创文章想与大家分享欢迎投稿。」




— CSDN学院魔性小程序来了! —


就这些了小白学python爬虫都能爬什麼,看视频整理而来大神勿喷

有兴趣学python爬虫都能爬什么的下面为链接

我要回帖

更多关于 python爬虫都能爬什么 的文章

 

随机推荐