我使用的是python3.4,在用requests库爬虫时,向百度post了一个参数,但是返回来的内容却没有python关键词的搜索列表,这是什么原因呢?我的代码如下:
import requests
import urllib
from bs4 import BeautifulSoup
url = 'https://www.baidu.com/s?'
key_word={'key':'python'}
headers = {'User_Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36'}
def get_data(url):
try:
html=requests.post(url,data=key_word,headers=headers)
if html.status_code == 200:
soup=BeautifulSoup(html.text,'lxml')
return soup
else:
print('error')
except urllib.error.HTTPError as e:
print(url, e, str(time.time()))
print(get_data(url))
以下是我返回的内容:
页é¢ä¸åå¨_ç¾åº¦æç´¢
ç½é¡µæ°é»è´´å§ç¥éé³ä¹å¾çè§é¢å°å¾æåºæ´å¤Â»
徿±æï¼æ¨è¦è®¿é®ç页é¢ä¸åå¨ï¼
温馨æç¤ºï¼
- è¯·æ£æ¥æ¨è®¿é®çç½åæ¯å¦æ£ç¡®
- 妿æ¨ä¸è½ç¡®è®¤è®¿é®çç½åï¼è¯·æµè§ç¾åº¦æ´å¤é¡µé¢æ¥çæ´å¤ç½åã
- åå°é¡¶é¨éæ°åèµ·æç´¢
- å¦æä»»ä½æè§æå»ºè®®ï¼è¯·åæ¶åé¦ç»æä»¬ã
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
POST不可以,用GET,请求这个URL
http://www.baidu.com/s?wd=pythonbash下可以这么测试:
然后打开这个
python.html看吧你是说百度的搜索提示列表,人家用的是get请求,不是post
直接输入的url是
https://www.baidu.com/baidu?word=python&ie=utf-8&tn=98012088_2_dg&ch=9直接requests.get就行