python爬虫,记录一下爬取过程,列表数据,翻页,post方式,保存字典
2021/7/3 17:21:44
本文主要是介绍python爬虫,记录一下爬取过程,列表数据,翻页,post方式,保存字典,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
记录一下自己的爬虫的过程把,最近在做个项目。
要爬取的网站比较简单。
其中的问题是:
post方式,网站的数据有一些需要使用post方式才能获得。
比如,
这部分要看到《发起的项目》,需要鼠标点击,刚开始以为是ajax,其实不算,是js的方式获取的。
因此,仔细研究发现,其实网址是这样的。
https://s*****view.php?id=GKUdgjKayCQvY
具体部分省略,看这个网址,其实没什么,但是通过浏览器检查,可以发现,鼠标点击《发起的项目》,会有一个js动作。
如果只有一页,
像这样
那么不会发现js动作。但是如果很多也,需要点击,就会发现,需要js了。
这个动作,是包含post的。
具体的参数如下
因此,其实请求的网址,可以用这样组成。
https://sd.zhiyuanyun.com/app/api/view.php?m=get_opps&type=2&id=89608371&p=3
所以,这里面就是id,p是页面。其他都是默认参数。
然后在利用post方式,构造出来这个请求就可以了。
def get_proj_number(id): print("((((((((( >>>>>>>> 现在开始 获取 组织 一共开展了 多少个项目 ") params = (('m', 'get_opps'), ('type', '2'), ('id', id), ('p', "1"), ) response = requests.get( 'https://sd.zhiyuanyun.com/app/api/view.php', headers=headers, params=params) selector = Selector(response)
这样,把p参数弄成一个for循环就可以了。
保存列表数据
最后请求下来的数据网页是一个列表
那么怎么保存这个列表。
列表包含 th 和td
那么 我直接把td 做成列表,然后zip一下。
我就弄了一个简单点的。做一个zip(list)
这篇关于python爬虫,记录一下爬取过程,列表数据,翻页,post方式,保存字典的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-26Python基础编程
- 2024-11-25Python编程基础:变量与类型
- 2024-11-25Python编程基础与实践
- 2024-11-24Python编程基础详解
- 2024-11-21Python编程基础教程
- 2024-11-20Python编程基础与实践
- 2024-11-20Python编程基础与高级应用
- 2024-11-19Python 基础编程教程
- 2024-11-19Python基础入门教程
- 2024-11-17在FastAPI项目中添加一个生产级别的数据库——本地环境搭建指南