python网络爬虫开发之爬虫的开发--整理与实战
优采云 发布时间: 2022-09-17 09:01python网络爬虫开发之爬虫的开发--整理与实战
文章采集调用十多个网站(包括个人博客)采集的内容,内容包括wp-cruiser爬虫基础算法与深度学习+tensorflow机器学习。这里关于wp-cruiser安装,这篇已经有详细介绍,网上有具体的安装教程,可以搜索了解下。主要的原理是基于wp-cruiser算法实现的。我们更关心的是最终效果如何?源代码和相关解释在cookiefailures.py文件,放在我的github地址。
这个文件源码,之前已经放到github上,代码打算公开,并统一按照doc格式提交。github地址:yaw-zhang/wp-cruiser项目部署请参考链接。
被采集对象(即知乎)采用多站点-多触点方式进行采集。本文已获得作者授权,希望对学习python爬虫或者python爬虫开发感兴趣的朋友,能够认真阅读本文,在这里把本人的总结提炼下,分享给大家。python网络爬虫开发之爬虫的开发--整理与实战。整理与实战可以加入爬虫开发从0到1的实战训练营,有兴趣的同学,可以加入。
一.思维导图本项目整体结构为:urllib/requests库获取登录页面的url,利用beautifulsoup库解析页面获取行政区划信息gb/tm字段解析与组合批量采集行政区划信息selenium库用于模拟登录抓取页面bs4解析页面页面vs.post请求,爬虫的正确姿势及爬虫开发框架与任务分配。二.本文主要解决几个问题1.爬虫采集哪些网站?2.爬虫如何解析页面?3.如何将爬取到的网站页面在requests中封装为field?三.实现结构1.urllib库登录/授权/登录方式(ssl,和session,cookie)2.beautifulsoup库爬取/解析请求相关页面3.爬虫解析爬取页面4.抓取登录页面5.获取授权登录页面6.获取行政区划信息/local_map页面7.抓取获取group_name页面8.抓取获取指定区划页面9.爬取post请求信息的信息。
5.有几个请求?分别包括哪些参数,请求会不会被封ip?6.请求参数中传递了哪些参数?请求间有什么联系?7.登录登录成功返回url请求后还是不能登录或者登录成功后不能解析页面.登录成功后会不会成功授权获取登录相关信息然后就不能登录,或者授权获取之后又不能抓取相关信息等问题.1.用登录登录看似简单,但是爬虫未必好爬取,毕竟不是全自动登录。
一般采用几种:初始化自动登录;二次登录第三方登录;手动登录+授权登录。2.获取登录页面,一般根据浏览器实现,分为基于get请求登录和post请求登录。举个例子:requests请求登录,要做的事情,比如设置头、响应验证码、验证码破解等,数据格式是xml,所以需要转成json。并且会生成封装的x。