[新人求助]爬取肯德基餐厅地址出现错误
为什么最后得到的数据是‘-1000’?问题出在哪? 可能是没加cookie被反爬了吧我以前有写过爬kfc,我拿我的改一改
import requests
import json
url = "http://www.kfc.com.cn/kfccda/ashx/GetStoreList.ashx?op=keyword"
def get_post(url, kw, page):
headers = {'Cookie': 'route-cell=ksa; ASP.NET_SessionId=ij2qbknlxns3ug4yrpqmyqvi; Hm_lvt_1039f1218e57655b6677f30913227148=1606209815; Hm_lpvt_1039f1218e57655b6677f30913227148=1606209815; SERVERID=825676b1eb536df327d3ca8f626c0188|1606210624|1606209837',
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36'}
data = {
"cname": "",
"pid": "",
"keyword": kw,
"pageIndex": page,
"pageSize": "10",
}
req = requests.post(url=url, data=data, headers=headers)
return req.text
ky = input("请输入要查询的地址:")
target = []
with open(ky+"的肯德基餐厅地址详情.html", "w", encoding="utf-8") as fp:
temp = get_post(url, ky, 1)
json.dump(temp, fp=fp, ensure_ascii=False)
# for page in range(1, 100):
# temp = get_post(url, ky, page)
# if temp == []:
# print('录入完毕')
# break
# for each in temp:
# fp.write("地点:" + each['provinceName'] +
# each['cityName']+each['addressDetail']+'\n')
# fp.write("餐厅名字:"+each['storeName']+"店\n")
# if each['pro'] == None:
# fp.write("详情: \n")
# else:
# fp.write("详情:"+each['pro']+'\n')
# fp.write('====================\n')
"{\"Table\":[{\"rowcount\":16}],\"Table1\":[{\"rownum\":1,\"storeName\":\"海口东站\",\"addressDetail\":\"东环高铁海口东站HKD1、HKD2处商业网点\",\"pro\":\"Wi-Fi,点唱机,礼品卡\",\"provinceName\":\"海南省\",\"cityName\":\"海口市\"},{\"rownum\":2,\"storeName\":\"海口秀英万达\",\"addressDetail\":\"秀英万达广场1001铺(海榆中线与椰海大道交叉口东北侧)\",\"pro\":\"24小时,Wi-Fi,店内参观,生日餐会\",\"provinceName\":\"海南省\",\"cityName\":\"海口市\"},{\"rownum\":3,\"storeName\":\"海口吾悦\",\"addressDetail\":\"迎宾路18号海口新城吾悦广场\",\"pro\":\"24小时,Wi-Fi\",\"provinceName\":\"海南省\",\"cityName\":\"海口市\"},{\"rownum\":4,\"storeName\":\"美兰机场\",\"addressDetail\":\"海口美兰国际机场美兰美购城二楼2-B-3商铺\",\"pro\":\"Wi-Fi,机场店\",\"provinceName\":\"海南省\",\"cityName\":\"海口市\"},{\"rownum\":5,\"storeName\":\"港珠澳大桥\",\"addressDetail\":\"港珠澳大桥珠海口岸集散广场商业C1-007号商铺\",\"pro\":\"Wi-Fi\",\"provinceName\":\"广东省\",\"cityName\":\"珠海市\"},{\"rownum\":6,\"storeName\":\"海口远大\",\"addressDetail\":\"长滨四路7号远大购物中心\",\"pro\":\"24小时,Wi-Fi,点唱机,店内参观,生日餐会\",\"provinceName\":\"海南省\",\"cityName\":\"海口市\"},{\"rownum\":7,\"storeName\":\"海口绿色佳园\",\"addressDetail\":\"凤翔东路6号绿色佳园10-110商铺一层(琼山五小对面)\",\"pro\":\"24小时,Wi-Fi,点唱机,店内参观,生日餐会\",\"provinceName\":\"海南省\",\"cityName\":\"海口市\"},{\"rownum\":8,\"storeName\":\"海口椰海\",\"addressDetail\":\"府城镇迈仍村椰海家园小区一层105\",\"pro\":\"Wi-Fi,店内参观,生日餐会\",\"provinceName\":\"海南省\",\"cityName\":\"海口市\"},{\"rownum\":9,\"storeName\":\"海口居然之家\",\"addressDetail\":\"市辖区滨海大道路102号海口居然之家一层商铺\",\"pro\":\"Wi-Fi,点唱机,店内参观,生日餐会\",\"provinceName\":\"海南省\",\"cityName\":\"海口市\"},{\"rownum\":10,\"storeName\":\"海口民声路\",\"addressDetail\":\"市辖区茉莉路与民声东路交叉口东北侧2号楼一层101号商铺\",\"pro\":\"Wi-Fi,点唱机,店内参观,生日餐会\",\"provinceName\":\"海南省\",\"cityName\":\"海口市\"}]}" 本帖最后由 cflying 于 2022-3-24 20:04 编辑
你仔细看网站,是不是还有个op=你给漏了{:10_277:}
下次你先在网站上查询成功了(这里目的是获取有效查询方式),再用同样的方法爬一下(这里目的是验证一下方法是否可行),结果一致后再批量爬(批量开干) cflying 发表于 2022-3-24 19:55
你仔细看网站,是不是还有个op=你给漏了
下次你先在网站上查询成功了(这里目的是获取有效查 ...
确实,多谢多谢{:10_266:}
页:
[1]