from collections import Counterimport requestsfrom bs4 import BeautifulSoupfrom urllib import requestimport urllib
url = 'http://www.baidu.com.cn/s?wd=' + urllib.parse.quote('BeautifulSoup') + '&pn=' # word為關鍵詞,pn是百度用來分頁的..
headers = {
'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36',
'Connection': 'keep-alive',
'accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8'}
r=requests.get(url,headers=headers)
soup = BeautifulSoup(r.text.replace('<b>', '').replace('</b>', ''),'lxml')print(soup.find(id="3").find('a', 'c-showurl').string)
#for i in range(1, 11):
# print(soup.find(id=i).find('a', 'c-showurl').string)問題主要在最后三行,如果find(id="3")就行find(id=i)就報錯,請問如何解決?還有個問題,就是為何通過python取的搜索結果與電腦搜索到的結果不同?
python3 BeautifulSoup方面問題
達令說
2018-07-22 07:59:16