①python语言基础知识扎实,熟悉面向对象编程思想,函数式编程,熟练运用python中常见的数据结构,熟悉生成器、迭代器和装饰器的使用;
②网络爬虫:熟练掌握网络爬虫技术,Scrapy框架、以及Scrapy-redis分布式爬虫技术和应用,熟悉相关反爬技术,并能利用浏览器伪装、IP代理等技术来规避反爬,熟练掌握Selenium的使用,Jupyter notebook, numpy, pandas等使用;
③熟练掌握XPath、Beautiful Soup、PyQuery解析库以及正则表达式的使用;
豆瓣爬取热门电影和电视剧
1、运用requests库进行网页爬取,xpath对网页数据解析;
2、模拟登录豆瓣网,提取相应的cookies信息;
3、分析请求数据接口,找到请求url地址,判断请求方式(GET或POST);
4、确定所言获取的电影字段信息,并以json格式进行数据存储;
5、运用多线程爬取,提高爬取效率;
模拟登录淘宝网并爬取商品信息
1、输入用户名后,浏览器向淘宝发起一个POST请求,判断是否出现滑块,一般不会出现,在请求30几次可能出现一次;
2、用户输入密码后,浏览器向淘宝又发起一个POST请求,验证用户名密码是否正确,如果正确返回一个token;
3、浏览器拿着token去阿里巴巴交换st码;
4、浏览器获取st码之后,拿着st码获取cookies,登录成功
5、为了避免重复登录,运用requests库的session进行登录,保持会话记录;
6、登录成功后就能对淘宝商城中的商品进行所需数据的提取;
7、但请求淘宝商城中的数据信息时,不能请求太快,并且在请求10页数据后就会被反爬,等待30分钟后才能继续爬取,因此爬取效率太低,要继续分析淘宝的反爬策略。
分布式爬取全国新房和二手房的信息
1、运用scrapy,scrapy-redis进行分布爬取;
2、搜房网不需要登录,可以直接请求所需的房子信息;
3、直接分析新房和二手房的请求url地址,并分别对新房和二手房的网页信息进行解析;
4、通过爬虫中间件,对请求头设置User-Agent,代理ip;
5、pipeline管道中间对爬取的数据存入mysql数据库;
6、用redis数据库作为url请求地址的存储于去重;