用python爬取百度的搜尋結果

2021-10-04 05:01:53 字數 1364 閱讀 1600

前幾天爬的今天整理了一下發現就兩個需要注意的點

一是記得用帶cookie的方式去訪問,也就是例項化requests.session()

二是轉化一下爬取到的url,訪問爬到的url得到返回的location值,該值便是真實的位址(如果你不是要爬url當我沒說)

知道了這兩點可以直接先去嘗試一下,並沒有想象的那麼難,爬不出來再看**

不帶cookie訪問,直接用requests.get()訪問,可以看到只能成功訪問一次。其他的雖然狀態碼是200但應該是觸發了反爬機制返回了其他頁面給你

帶cookie訪問,基本上都成功了

轉化一下得到的url,得到最終的url

#獲取url

def get_url(wd):

s = requests.session()

#10為第2頁,20為第三頁,30為第四頁,以此類推

for i in range(10, 600, 10):

url = ''

params =

r = s.get(url=url, headers=headers, params=params)

print(r.status_code)

soup = beautifulsoup(r.text, 'lxml')

for so in soup.select('#content_left .t a'):

g_url = so.get('href')

print(convert_url(g_url))

time.sleep(1 + (i / 10))

if __name__ == '__main__':

headers =

wd = input("輸入搜尋關鍵字:")

get_url(wd)

用python3爬取百度首頁

import urllib.request import urllib url html urllib.request.urlopen url content html.read decode utf 8 html text bytes.decode html.read print html tex...

爬取百度諮詢

獲取url,就是把關鍵字進行urlencode。整理爬取的內容,就是把一些 回車 空格 等雜七雜八的東西過濾掉。輸出結果下面是 import re from urllib import parse import time import requests from bs4 import beautif...

用BeatifulSoup爬取百度貼吧(主樓文字)

最近學習大資料分析,發現很多庫都是python的,於是學學python來抓一些資料進而分析。貼吧算是資料 之一。print urls.len 獲取總共的頁面數,貼吧有可能抽風,每次獲取的數目都不一樣,實在不行可以人工指定了個最大的數 pageno urls.len pageno 10 人工指定最大頁...