熟练基于 Requests, Scrapy, Selenium 各模块的数据抓取,利用Xpath, BeautifulSoup,Re 的数据清洗, 验证码,登录,js异步加密,等各种反爬措施的应对;
熟悉数据库MySQL, Redis, MongoDB,熟悉Python 多线程爬虫及其机制,熟悉HTTP/HTTPS协议,TCP/IP网络协议;
了解Tesseract机器图像识别系统,并处理简单的文字验证码,熟练掌握Scrapy框架,以及编写各类中间件;
熟练掌握scrapy-redis分布式框架,了解各组件工作机制
项目:房屋信息采集爬虫+数据分析
项目描述:这个项目主要是58同城,租房网,搜房网等网站的租房信息的爬取并提供给数据分析部门
职责描述:
分析网站、网页、链接的特征挖掘,采集任务的分析及采集方案设计,使用scrapy框架爬取数据,使用mango存储数据,准备一个代理ip池和user-agent列表以应对网站的反爬虫机制
Spider Engine负责Spider、ItemPipeline、Downloader、Scheduler中间的通讯,信号、数据传递,获取Spider的URL之后,发送至调度器,请求排列入队,发送处理好的request给引擎,下载器根据中间件的设置下载request请求,spider自行处理下载好的请求,处理完毕之后,有两个结果,既需要跟进的URL和获取到的item数据,item数交给Pipeline处理,URL交给调度器,重复之前的步骤,直到获取到所有需要的数据
此项目是对租房信息的抓取,抓取租房的价格、位置、图片、配置等信息,并做保存,对于爬取的数据使用jupyter notebook进行简单分析。将数据提交给数据分析部门,通过爬取的数据分析当下深圳地区的租房现状,快速捕捉市场机遇,实现利益最大化。
项目:苹果手机天猫店的数据爬取(个人项目)
项目描述:收集各个天猫店苹果手机的销售情况,型号折扣以及价格的趋势。
责任描述:
1. 采用 requests实现爬取。
2. 用 xpath 提取想要的节点,分别为产品的名字,价格,折扣,销量。以列表形式存储。
3. 根据分析出下一页的链接规则,运用re去获取数字,添加到url中继续爬取,下一页面直到获取不到。
4. 把爬取的内容存入本地磁盘,也可存入数据库。
通过浏览器network抓包,寻找url地址,分析找出需要携带的动态请求体参数,通过sarch找到参数生成的地址,阅读JS文件,debug观察js执行过程,得出结论具体参数为当前时间戳拼接random随机数字,再将User-Agent经过md5加密后的密文,最后构建好请求参数向目
先看一下目标网站是静态加载还是动态加载的,打开开发者模式,复制其中一个图片链接,Ctrl+U查看源代码,Ctrl+f打开搜索框,把链接地址粘贴进去,会发现根本找不到这个链接地址。这样就可以确定为动态加载。