为了账号安全,请及时绑定邮箱和手机立即绑定

无法修改字典内的页码

无法修改字典内的页码

ibeautiful 2021-12-21 16:03:09
我在 python 中编写了一个脚本,使用 post 请求从网页中获取 json 内容。如果我只坚持它的默认页面,脚本就可以正常工作。但是,我的目的是创建一个循环来从几个不同的页面收集内容。我正在努力解决的唯一问题是使用page关键字内payload来循环三个不同的页面。将我的错误方法视为占位符。如何在 dict 中使用格式来更改页码?工作脚本(如果我摆脱了分页循环):import requestslink = 'https://nsv3auess7-3.algolianet.com/1/indexes/idealist7-production/query?x-algolia-agent=Algolia%20for%20vanilla%20JavaScript%203.30.0&x-algolia-application-id=NSV3AUESS7&x-algolia-api-key=c2730ea10ab82787f2f3cc961e8c1e06'for page in range(0,3):    payload = {"params":"getRankingInfo=true&clickAnalytics=true&facets=*&hitsPerPage=20&page={}&attributesToSnippet=%5B%22description%3A20%22%5D&attributesToRetrieve=objectID%2Ctype%2Cpublished%2Cname%2Ccity%2Cstate%2Ccountry%2Curl%2CorgID%2CorgUrl%2CorgName%2CorgType%2CgroupID%2CgroupUrl%2CgroupName%2CisFullTime%2CremoteOk%2Cpaid%2ClocalizedStarts%2ClocalizedEnds%2C_geoloc&filters=(orgType%3A'NONPROFIT')%20AND%20type%3A'JOB'&aroundLatLng=40.7127837%2C%20-74.0059413&aroundPrecision=15000&minimumAroundRadius=16000&query="}    res = requests.post(link,json=payload.format(page)).json()    for item in res['hits']:        print(item['name'])按原样运行脚本时出现错误:res = requests.post(link,json=payload.format(page)).json()AttributeError: 'dict' object has no attribute 'format'
查看完整描述

1 回答

?
波斯汪

TA贡献1811条经验 获得超4个赞

format是一个字符串方法。您应该将其应用于您的字符串值payload:


payload = {"params":"getRankingInfo=true&clickAnalytics=true&facets=*&hitsPerPage=20&page={}&attributesToSnippet=%5B%22description%3A20%22%5D&attributesToRetrieve=objectID%2Ctype%2Cpublished%2Cname%2Ccity%2Cstate%2Ccountry%2Curl%2CorgID%2CorgUrl%2CorgName%2CorgType%2CgroupID%2CgroupUrl%2CgroupName%2CisFullTime%2CremoteOk%2Cpaid%2ClocalizedStarts%2ClocalizedEnds%2C_geoloc&filters=(orgType%3A'NONPROFIT')%20AND%20type%3A'JOB'&aroundLatLng=40.7127837%2C%20-74.0059413&aroundPrecision=15000&minimumAroundRadius=16000&query=".format(page)}

res = requests.post(link,json=payload).json()


查看完整回答
反对 回复 2021-12-21
  • 1 回答
  • 0 关注
  • 182 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号