python网页数据抓取(edge浏览器数据教程(教程用于爬取动态加载的数据))
优采云 发布时间: 2022-03-17 07:05python网页数据抓取(edge浏览器数据教程(教程用于爬取动态加载的数据))
python时间戳
将时间戳转换为日期
#!/usr/bin/python
# -*- coding: UTF-8 -*-
# 引入time模块
import time
#时间戳
timeStamp = 1581004800
timeArray = time.localtime(timeStamp)
#转为年-月-日形式
otherStyleTime = time.strftime("%Y-%m-%d ", timeArray)
print(otherStyleTime)
Python爬取数据教程(爬取动态加载数据教程)
很多时候我们需要抓取网页动态加载的数据。这是通过打开网页并按“Fn+F12”打开“开发者工具”。
边缘浏览器打开开发者工具:
谷歌浏览器打开开发者工具:
Edge 点击“网络”,谷歌点击“网络”,
要查找我们要查找的文件,我们可以按文件类型查找。在标头中,我们可以看到请求 URL。在 body 界面中,我们看到了传递过来的数据。我们想要得到的是dataprice。此数据为 json 格式。Python 将 json 数据作为字符串获取。
代码:
import requests
import json
import urllib
request_url = "http://tool.manmanbuy.com/history.aspx?DA=1&action=gethistory&url=https%253A%2F%2Fproduct.suning.com%2F0070238646%2F10635620355.html&bjid=&spbh=&cxid=&zkid=&w=951&token=nvzld5767ed2371ac6b6e479dd20b3b3e191l9kvo7j"
data = requests.get(request_url)
data_price = json.loads(data.text)
data_price = data_price['datePrice']
print(data_price)
运行结果:
所以我们得到了dataprice!
这还没完,我们现在已经获取到了一个url对应的动态数据,但是我有几千条数据,所以我们研究一下这个requestURL,看看能不能构造(截图是谷歌浏览器的截图)
通过比较几个请求的url,我发现它们的区别在于,在“url=”和“token=”之后,url是输入链接,我们可以传入,但是这个token是什么?? 经过研究,发现token是在这里的,但是是随机生成的,怎么获取这个字段呢?
通过在网页上右击“查看网页源代码”,或者在开发者工具中点击第一个“元素”查看源代码,发现这里生成了token。
但是我对加密功能没看懂(懂的大神可以告诉我,哈哈),只能另找办法再研究了。哈哈,token又出现在这里了,最后,得到src路径,通过对字符串进行修剪得到token的值。
所以我们可以构造requestURL,
request_url = "http://tool.manmanbuy.com/history.aspx?DA=1&action=gethistory&url={0}&bjid=&spbh=&cxid=&zkid=&w=951&token={1}".format(url,token)
使用上面的代码,我们可以得到所有的数据!