python獲取百度熱榜鏈接的實(shí)例方法
目標(biāo)網(wǎng)址:
https://www.baidu.com/
要獲取的內(nèi)容:

鏈接分析:
從下圖可以看出只需要獲取關(guān)鍵字,再構(gòu)建就可以了。

完整代碼:
import requests
import pprint
import re
import urllib.parse
url = 'https://www.baidu.com/'
headers = {
'Host': 'www.baidu.com',
'Referer': 'https://www.baidu.com/',
'User-Agent': 你的User-Agent,
'Cookie': 你的Cookie
}
response = requests.get(url, headers=headers).content.decode('utf-8')
# 獲取關(guān)鍵字
pat = '"pure_title": "(.*?)"'
keyword = re.findall(pat, response, re.S)
print(len(keyword))
for hot_word in keyword:
# 漢字不符合url標(biāo)準(zhǔn),所以這里需要進(jìn)行url編碼
i = urllib.parse.quote(hot_word, encoding='utf-8', errors='replace')
# url構(gòu)建
link = f'https://www.baidu.com/s?cl=3&tn=baidutop10&fr=top1000&wd={i}&rsv_idx=2&rsv_dl=fyb_n_homepage&hisfilter=1'
print(link)
你會(huì)發(fā)現(xiàn)結(jié)果很長(zhǎng):

但其實(shí)關(guān)鍵字后面的幾個(gè)參數(shù)是可以去掉的,這樣url就沒有那么長(zhǎng)了。

內(nèi)容擴(kuò)展:
python 爬取簡(jiǎn)單的百度搜索結(jié)果
爬取百度搜索結(jié)果
主要還要借助xpath helper谷歌瀏覽器的插件來操作更容易找到需要查找信息的xpath位置
還要首先了解一下百度搜索請(qǐng)求的參數(shù) lm默認(rèn)為0,天數(shù)限制,但是好像只有1有用。
默認(rèn)每頁10條信息,rn
pn是頁碼
from lxml import etree
import re
import requests
import string
import json
headers = {
"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36"
}
response = requests.get('https://www.baidu.com/s?wd=騰訊視頻優(yōu)惠&lm=1',headers=headers)
r = response.text
html = etree.HTML(r,etree.HTMLParser())
r1 = html.xpath('//h3')
r2 = html.xpath('//*[@class="c-abstract"]')
r3 = html.xpath('//a[@class="c-showurl"]')
for i in range(10) :
r11 = r1[i].xpath('string(.)')
r22 = r2[i].xpath('string(.)')
r33 = r3[i].xpath('string(.)')
# with open('test.txt', 'a', encoding='utf-8') as f:
# f.write(json.dumps(r11,ensure_ascii=False) + '\n')
# f.write(json.dumps(r22, ensure_ascii=False) + '\n')
# f.write(json.dumps(r33, ensure_ascii=False) + '\n')
print(r11,end='\n')
print(r22,end='\n')
print(r33)
print()
到此這篇關(guān)于python獲取百度熱榜鏈接的實(shí)例方法的文章就介紹到這了,更多相關(guān)教你用python獲取百度熱榜鏈接內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
解決Python復(fù)雜zip文件的解壓?jiǎn)栴}
這篇文章主要介紹了Python復(fù)雜zip文件的解壓,通過配合 shutil 與 os 標(biāo)準(zhǔn)庫中的相關(guān)功能,實(shí)現(xiàn)將指定任意 zip 壓縮包,完好地解壓到指定的目錄中,需要的朋友可以參考下2021-12-12
Python 降級(jí)的兩種實(shí)現(xiàn)方法
本文主要介紹了Python 降級(jí)的兩種實(shí)現(xiàn)方法,幫助用戶在降級(jí)Python時(shí)不完全卸載,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-12-12
Python中有哪些關(guān)鍵字及關(guān)鍵字的用法
這篇文章主要介紹了Python中有哪些關(guān)鍵字及關(guān)鍵字的用法,分享python中常用的關(guān)鍵字,本文結(jié)合示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-02-02
python 已知平行四邊形三個(gè)點(diǎn),求第四個(gè)點(diǎn)的案例
這篇文章主要介紹了python 已知平行四邊形三個(gè)點(diǎn),求第四個(gè)點(diǎn)的案例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-04-04
詳解Python prometheus_client使用方式
本文主要介紹了Python prometheus_client使用方式,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-02-02
Python中g(shù)lob庫實(shí)現(xiàn)文件名的匹配
本文主要主要介紹了Python中g(shù)lob庫實(shí)現(xiàn)文件名的匹配,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-06-06
python/Matplotlib繪制復(fù)變函數(shù)圖像教程
今天小編就為大家分享一篇python/Matplotlib繪制復(fù)變函數(shù)圖像教程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-11-11
python+opencv處理顏色之將目標(biāo)顏色轉(zhuǎn)換實(shí)例代碼
OpenCV 是一個(gè)的跨平臺(tái)計(jì)算機(jī)視覺庫,可以運(yùn)行在 Linux、Windows 和 Mac OS 操作系統(tǒng)上,這篇文章主要介紹了python+opencv處理顏色之將目標(biāo)顏色轉(zhuǎn)換的相關(guān)資料,需要的朋友可以參考下2025-03-03

