python獲取百度熱榜鏈接的實例方法
目標(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)
你會發(fā)現(xiàn)結(jié)果很長:
但其實關(guān)鍵字后面的幾個參數(shù)是可以去掉的,這樣url就沒有那么長了。
內(nèi)容擴(kuò)展:
python 爬取簡單的百度搜索結(jié)果
爬取百度搜索結(jié)果
主要還要借助xpath helper谷歌瀏覽器的插件來操作更容易找到需要查找信息的xpath位置
還要首先了解一下百度搜索請求的參數(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獲取百度熱榜鏈接的實例方法的文章就介紹到這了,更多相關(guān)教你用python獲取百度熱榜鏈接內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python 常用日期處理 -- calendar 與 dateutil 模塊的使用
這篇文章主要介紹了Python如何使用calendar 與 dateutil 模塊處理日期,幫助大家更好的理解和學(xué)習(xí)python,感興趣的朋友可以了解下2020-09-09python?pipreqs工具生成requirements.txt文件使用詳解
這篇文章主要為大家介紹了python?pipreqs工具生成requirements.txt文件使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-12-12Python 實現(xiàn)局域網(wǎng)遠(yuǎn)程屏幕截圖案例
這篇文章主要介紹了Python 實現(xiàn)局域網(wǎng)遠(yuǎn)程屏幕截圖案例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-03-03Python實現(xiàn)將Excel內(nèi)容插入到Word模版中
前段時間因為需要處理一大堆驗收單,都是一些簡單的復(fù)制粘貼替換工作,于是就想到用python進(jìn)行處理。本文分享了用python將excel文件單元格內(nèi)容插入到word模版中并保存為新文件的辦法,希望對大家有所幫助2023-03-03在 Python 應(yīng)用中使用 MongoDB的方法
這篇文章主要介紹了在 Python 應(yīng)用中使用 MongoDB的方法,需要的朋友可以參考下2017-01-01全網(wǎng)最全python庫selenium自動化使用詳細(xì)教程
這篇文章主要介紹了python庫selenium自動化使用詳細(xì)教程,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧2021-01-01python中協(xié)程實現(xiàn)TCP連接的實例分析
在本篇文章中我們給大家分享了python中協(xié)程實現(xiàn)TCP連接的代碼示例內(nèi)容,有需要的朋友們可以跟著學(xué)習(xí)下。2018-10-10