python网页数据抓取(edge浏览器数据教程(教程用于爬取动态加载的数据))

优采云 发布时间: 2021-12-18 09:05

  python网页数据抓取(edge浏览器数据教程(教程用于爬取动态加载的数据))

  蟒蛇时间戳

  将时间戳转换为日期

  #!/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 接口中,我们看到传递的数据。我们想要得到的是数据价格。此数据为 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)

  操作结果:

  

  所以我们得到了数据价格!

  这还没完呢,我们现在已经获取到了一个url对应的动态数据,但是我有上千条数据,所以来研究一下这个requestURL是否可以构造(截图是谷歌浏览器截图)

  

  

  通过对比几个requestURL,我发现这些请求的区别在于“url=”和“token=”之后,url是输入链接,我们可以自己传入,但是这个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)

  再次使用上面的代码,我们就可以得到所有的数据了!

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线