Python爬虫实践(一) — 交 站用户信息爬取

系列文章:

Python爬虫实践(一) — 交 站用户信息爬取

Python爬虫实践(二) — 爬虫进阶:爬取数据处理、数据库存储

Python爬虫实践(三) — 用户全量数据爬取、多媒体信息爬取

Selenium爬虫 — 图片视频的src绝对地址链接分析

Selenium爬虫 — WebDriver多标签页创建与切换

Selenium爬虫 — 无界面爬取:无头模式及其他参数

使用Selenium爬取数据时, 页切换之后原先获取的元素变量失效的问题

Python爬取图片时,urllib提示没有属性urlretrieve的问题

MySQL创建新连接时,不能成功连接的问题

Selenium爬虫 — 元素点击与定位的稳定方式

最终可运行代码已上传:

CSDN下载链接(最终版)

GitHub下载链接

目录

爬虫项目目标

过程原理分析

最终实现代码


爬虫项目目标

给一个某 交 站的用户ID,爬这个用户的所有内容

比如发帖情况、帖子转发情况,被谁赞,赞的人的名字,评价评论,他的朋友,他的个人信息。

过程原理分析

原理:并不用科学上 ,只是理论层次的研究。

简单爬虫脚本:selenium即可。

爬虫框架:**中大量采用异步加载,如果简单收发包必定很多内容是解析不到的,因此这里需要一个JavaScript渲染引擎,这个引擎可以使用selenium + chrome(handless) 。

开发语言:python3 ,python在开发爬虫方面有独特的优势。

开发工具:pycharm, JB公司的pycharm几乎是Python IDE的首选。

程序具体步骤:用户登录。使爬虫保持登录状态。获取用户主页面。获取时间线信息。获取公共主页的发帖信息。获取好友信息。反爬虫的相关操作。

防止封 可以采取的措施:

1、减少并发数,设置发包延时

2、设置代 理 池

3、设置UA

4、设置多用户登录,通过从用户的登录cookie池中随机选取一个作为请求的cookie,在爬虫开始位置导入多个用户的用户名和密码信息,依次登录,登录成功后保存用户cookie到列表,后面每次发包前随机选取一个cookie

5、设置Reuqests函数的等待时间,减慢爬虫运行速度防止由于发包过快导致账 被封

最终实现代码

最终选择使用selenium来简单爬取。

问题:

测试时,各个标签元素定位的问题是关键,classname定位并不是一直有效的。

公共主页与个人主页差异也很大。

数据过多时,比如好友列表与评论列表,需要考虑下拉刷新与AJAX异步加载的数据包。

另外, 络问题会导致页面加载问题,也会导致数据获取失败。

参考文章:

https://www.cnblogs.com/hanmk/p/8997786.html

https://www.cnblogs.com/LXP-Never/p/11386933.html

https://www.jianshu.com/p/5dd0208f87be

https://www.cnblogs.com/lanuage/p/9125586.html

https://blog.csdn.net/chinwuforwork/article/details/77725959

https://www.jianshu.com/p/fe7329619edd

文章知识点与官方知识档案匹配,可进一步学习相关知识Python入门技能树 络爬虫Selenium211379 人正在系统学习中

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2020年3月6日
下一篇 2020年3月6日

相关推荐