动态页面的抓取包以及内容的输出

该代码段使用Python的requests和json库从腾讯新闻API获取数据,并使用jsonpath解析JSON响应以提取标题和ID。它展示了如何通过设置User-Agent随机化请求头来模拟浏览器行为。
摘要由CSDN通过智能技术生成
#这里需要我们导入jsonpath 以及json库 没有的话可以去cmd里下载,json是python自带的哦,
#pip install jsonpth    jsonpath库的下载
from random import choice
from jsonpath import jsonpath
import json
import requests
#url地址需要自行在Headers里寻找 可以更改size尺寸等页数问题
url='https://i.news.qq.com/trpc.qqnews_web.kv_srv.kv_srv_http_proxy/list?sub_srv_id=24hours&srv_id=pc&offset=60&limit=20&strategy=1&ext={%22pool%22:[%22top%22],%22is_filter%22:7,%22check_type%22:true}'
ua=[
    'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.163 Safari/535.1',
    'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:6.0) Gecko/20100101 Firefox/6.0',
    'Opera/9.80 (Windows NT 6.1; U; zh-cn) Presto/2.9.168 Version/11.50',
]
header={'User-Agent':choice(ua)}
resp=requests.get(url,headers=header)
#将字符串转换为字典模式
obj=json.loads(resp.text)
#jsonpath表达式,比较好写  根目录里任意位置的title键里的值数据
titles=jsonpath(obj,'$..title')
#jsonpath表达式,比较好写  根目录里任意位置的cms_id键里的值数据
ids=jsonpath(obj,'$..cms_id')
for i in titles:
    print(i)
#格式化遍历数据进行输出打印
for id,title in zip(ids,titles):
    print(f'{id}:{title}')

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值