找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 2477|回复: 3

[求助] 请问这个列表溢出是什么原因?

3

主题

5

帖子

5

积分

贫民

积分
5
iluvyou 发表于 2018-3-13 00:13:04 | 显示全部楼层 |阅读模式
源码:
import requests
import re
import time
import random
from bs4 import BeautifulSoup

url='http://place.qyer.com/poi.php?action=list_json'
header_dict={
   'Accept':'application/json, text/javascript, */*; q=0.01',
   'Accept-Encoding':'gzip, deflate',
   'Accept-Language':'zh-CN,zh;q=0.8',
   'Connection':'keep-alive',
   'Content-Length':'79',
   'Content-Type':'application/x-www-form-urlencoded; charset=UTF-8',
   'Cookie':'__guid=88071001.3822821331064666000.1519999211233.0117; als=0; isnew=1519999226112; PHPSESSID=0e92d62b1e88715702d521465c607ea5; source_url=https%3A//www.baidu.com/link%3Furl%3DmM9mKlWgEoJQ05OMJnWZlcI0itKR28TtPQGAvf-N2OG%26wd%3D%26eqid%3Dfb5f2acd00008f29000000035aa5f796; GuideFlow=1; monitor_count=94; __utma=253397513.13617450.1519999204.1520837515.1520842386.20; __utmc=253397513; __utmz=253397513.1520825874.17.6.utmcsr=baidu|utmccn=(organic)|utmcmd=organic; isDoLogin=828; _guid=R19e045a-89b5-d5a2-8baa-9ac3e01bb128; new_session=0; session_time=1520857618.37; init_refer=http%253A%252F%252Fplace.qyer.com%252Fbangkok%252Fsight%252F; new_uv=3',
   'Host':'place.qyer.com',
   'Origin':'http://place.qyer.com',
   'Referer':'http://place.qyer.com/bangkok/sight/',
   'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36',
   'X-Requested-With':'XMLHttpRequest'
}

form={
'page': '4',
   'type': 'city',
   'pid': '55',
   'sort': '0',
   'subsort': 'all',
   'isnominate': '-1',
   'haslastm': 'false',
   'rank': '6'
}
#time.sleep(random.randint(2,5))
html=requests.post(url,data=form,headers=header_dict)
soup=BeautifulSoup(html.text,"html.parser")
title=soup.select('h3.title a')[0].get_text(strip=True)
print(title)





1.PNG
2.PNG

运行结果

运行结果
回复

使用道具 举报

5

主题

101

帖子

101

积分

版主

Rank: 7Rank: 7Rank: 7

积分
101

最佳新人活跃会员热心会员突出贡献

QQ
落叶秋风 发表于 2018-3-13 14:38:12 | 显示全部楼层
我看了你的代码,你获取的是第一个元素,这样还是会溢出,那就说明你没获取到东西
回复 支持 反对

使用道具 举报

3

主题

5

帖子

5

积分

贫民

积分
5
iluvyou  楼主| 发表于 2018-3-13 16:37:49 | 显示全部楼层
落叶秋风 发表于 2018-3-13 14:38
我看了你的代码,你获取的是第一个元素,这样还是会溢出,那就说明你没获取到东西 ...

那您能试着写一下代码,把每页的景点链接都爬出来么?我试了好久都没成功。http://place.qyer.com/bangkok/sight/
回复 支持 反对

使用道具 举报

0

主题

3

帖子

3

积分

贫民

积分
3
汪汪888888 发表于 2018-3-14 17:47:59 | 显示全部楼层
html=requests.post(url,data=form)
print(html.json()['data']['list'][0]['cnname'])
print(html.json()['data']['list'][0]['url'])

[0] 是第一个 你可以自己循环处理 另外post中的参数page是页数 也要循环处理
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表