基本的HTML语言知识(知道href等大学计算机一级内容即可) 理解网站的发包和收包的概念(POST GET) 稍微一点点的js知识,用于理解动态网页(当然如果本身就懂当然更好啦)
- 扛把子技术,总得会最基础的:
- 表达清晰简单,掌握了以后基本可以不用正则 参考: XPath教程
- 丽汤模块解析网页神器,一款神器,如果不用一些爬虫框架(如后文讲到的scrapy),配合request,urllib等模块(后面会详细讲),可以编写各种小巧精干的爬虫脚本 官网文档:Beautiful Soup文档 参考案例:
- 看源代码:快速定位元素
- 分析xpath:1、此处建议谷歌系浏览器,可以在源码界面直接右键看
- 推荐httpfox,火狐浏览器下的插件,比谷歌火狐系自带的F12工具都要好,可以方便查看网站收包发包的信息
非常不错的xpath测试工具,但是有几个坑,都是个人踩过的,,在此告诫大家: 1、xpath checker生成的是绝对路径,遇到一些动态生成的图标(常见的有列表翻页按钮等),飘忽不定的绝对路径很有可能造成错误,所以这里建议在真正分析的时候,只是作为参考 2、记得把如下图xpath框里的“x:”去掉,貌似这个是早期版本xpath的语法,目前已经和一些模块不兼容(比如scrapy),还是删去避免报错
在线正则表达式测试,拿来多练练手,也辅助分析!里面有很多现成的正则表达式可以用,也可以进行参考!
python的火,很大原因就是各种好用的模块,这些模块是居家旅行爬网站常备的——
urllib urllib2 requests
selenium(会了这个配合scrapy无往不利,是居家旅行爬网站又一神器,下一版更新的时候会着重安利,因为这块貌似目前网上的教程还很少) phantomJS(不显示网页的selenium)
PIL opencv pybrain 打码平台