Python Requests爬蟲之求取關鍵詞頁面詳解

需求:爬取搜狗首頁的頁面數據

import requestsif __name__=='__main__':    #step 1:搜索Url    url='https://123.sogou.com/'    #step 2:發起請求    #get方法會返回一個響應對象    response=requests.get(url=url)    #step 3:獲取響應數據,text返回的是字符串形式的響應數據    page_text=response.text    print(page_text)    #step 4:持久化存儲    with open('./sogou.html','w',encoding='utf-8') as fp:        fp.write(page_text)    print("爬取數據結束")import requests
if __name__=='__main__':
    #step 1:搜索Url
    url='https://123.sogou.com/'
    #step 2:發起請求
    #get方法會返回一個響應對象
    response=requests.get(url=url)
    #step 3:獲取響應數據,text返回的是字符串形式的響應數據
    page_text=response.text
    print(page_text)
    #step 4:持久化存儲
    with open('./sogou.html','w',encoding='utf-8') as fp:
        fp.write(page_text)
    print("爬取數據結束")

請添加圖片描述

使用UA偽裝 求取關鍵詞頁面

import requests
if __name__=='__main__':
    #UA偽裝:將對應的User-Agent封裝到一個字典中
    headers={
        'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.9 Safari/537.36'
    }
    url='https://www.sogou.com/sie?'
    #處理url攜帶的參數:封裝到字典中
    kw=input('enter a word:')
    param={
        'query':kw
    }
    #對指定的url發起的請求對應的url是攜帶參數的,並且請求過程中處理瞭參數
    response=requests.get(url=url,params=param,headers=headers)#headers是偽裝 params輸入關鍵詞

    page_text=response.text#以文本的形式輸出
    fileName=kw+'.html'#存儲為網頁形式
    with open(fileName,'w+',encoding='utf-8') as fp:
        fp.write(page_text)#寫入fp
    print(fileName,"保存成功!!")

請添加圖片描述

總結

本篇文章就到這裡瞭,希望能夠給你帶來幫助,也希望您能夠多多關註WalkonNet的更多內容!         

推薦閱讀: