欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python爬蟲小技巧之偽造隨機(jī)的User-Agent

 更新時(shí)間:2018年09月13日 10:52:38   作者:沈唁  
這篇文章主要給大家介紹了關(guān)于Python爬蟲小技巧之偽造隨機(jī)的User-Agent的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

前言

不管是做開發(fā)還是做過網(wǎng)站的朋友們,應(yīng)該對(duì)于User Agent一點(diǎn)都不陌生,User Agent 中文名為用戶代理,簡稱 UA,它是一個(gè)特殊字符串頭,使得服務(wù)器能夠識(shí)別客戶使用的操作系統(tǒng)及版本、CPU 類型、瀏覽器及版本、瀏覽器渲染引擎、瀏覽器語言、瀏覽器插件等

在Python爬蟲的過程中經(jīng)常要模擬UserAgent, 因此自動(dòng)生成UserAgent十分有用

通過UA來判斷不同的設(shè)備或者瀏覽器是開發(fā)者最常用的方式方法,這個(gè)也是對(duì)于Python反爬的一種策略,但是有盾就有矛啊

寫好爬蟲的原則只有一條:

就是讓你的抓取行為和用戶訪問網(wǎng)站的真實(shí)行為盡量一致

1、偽造UA字符串,每次請(qǐng)求都使用隨機(jī)生成的UA

為了減少復(fù)雜度,隨機(jī)生成UA的功能通過第三方模塊庫fake-useragent實(shí)現(xiàn),使用pip進(jìn)行安裝

pip install fake-useragent

2、生成一個(gè)UA字符串只需要如下代碼

from fake_useragent import UserAgent
 ua = UserAgent()

各瀏覽器的User-Agent

這個(gè)庫還有一個(gè)其他的功能,就是可以隨機(jī)各瀏覽器的UA

IE瀏覽器的UA:

print(ua.ie)

Mozilla/5.0 (Windows; U; MSIE 9.0; Windows NT 9.0; en-US)

Opera瀏覽器的UA:

print(ua.opera)

Opera/9.80 (Windows NT 6.1; U; zh-cn) Presto/2.6.37 Version/11.00

Chrome瀏覽器的UA:

print(ua.chrome)

Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.2 (KHTML, like Gecko) Chrome/22.0.1216.0 Safari/537.2

Firefox瀏覽器的UA:

print(ua.firefox)

Mozilla/5.0 (Windows NT 6.2; Win64; x64; rv:16.0.1) Gecko/20121011 Firefox/16.0.1

Safari瀏覽器的UA:

print(ua.safari)

Mozilla/5.0 (iPad; CPU OS 6_0 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0 Mobile/10A5355d Safari/8536.25

隨機(jī)User-Agent

寫爬蟲最實(shí)用的就是可以隨意變換headers,一定要有隨機(jī)性

在這里我寫了三個(gè)隨機(jī)生成UA,三次打印都不一樣,隨機(jī)性很強(qiáng),十分方便

print(ua.random)
print(ua.random)
print(ua.random)

Mozilla/5.0 (X11; CrOS i686 3912.101.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.116 Safari/537.36

Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, likeGecko) Chrome/37.0.2062.124 Safari/537.36

Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1664.3 Safari/537.36

當(dāng)然,你如果不想這么用的話,你也可以自己搜集一些UA,存為文本文件,然后打開讀取來用

附:常用的User-Agent列表

USER_AGENTS = [
 "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; AcooBrowser; .NET CLR 1.1.4322; .NET CLR 2.0.50727)",
 "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; Acoo Browser; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0; .NET CLR 3.0.04506)",
 "Mozilla/4.0 (compatible; MSIE 7.0; AOL 9.5; AOLBuild 4337.35; Windows NT 5.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)",
 "Mozilla/5.0 (Windows; U; MSIE 9.0; Windows NT 9.0; en-US)",
 "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0; .NET CLR 3.5.30729; .NET CLR 3.0.30729; .NET CLR 2.0.50727; Media Center PC 6.0)",
 "Mozilla/5.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; .NET CLR 1.0.3705; .NET CLR 1.1.4322)",
 "Mozilla/4.0 (compatible; MSIE 7.0b; Windows NT 5.2; .NET CLR 1.1.4322; .NET CLR 2.0.50727; InfoPath.2; .NET CLR 3.0.04506.30)",
 "Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN) AppleWebKit/523.15 (KHTML, like Gecko, Safari/419.3) Arora/0.3 (Change: 287 c9dfb30)",
 "Mozilla/5.0 (X11; U; Linux; en-US) AppleWebKit/527+ (KHTML, like Gecko, Safari/419.3) Arora/0.6",
 "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.2pre) Gecko/20070215 K-Ninja/2.1.1",
 "Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9) Gecko/20080705 Firefox/3.0 Kapiko/3.0",
 "Mozilla/5.0 (X11; Linux i686; U;) Gecko/20070322 Kazehakase/0.4.5",
 "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.8) Gecko Fedora/1.9.0.8-1.fc10 Kazehakase/0.5.6",
 "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.11 (KHTML, like Gecko) Chrome/17.0.963.56 Safari/535.11",
 "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_3) AppleWebKit/535.20 (KHTML, like Gecko) Chrome/19.0.1036.7 Safari/535.20",
 "Opera/9.80 (Macintosh; Intel Mac OS X 10.6.8; U; fr) Presto/2.9.168 Version/11.52",
]

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問大家可以留言交流,謝謝大家對(duì)腳本之家的支持。

原文鏈接:https://qq52o.me/2281.html

相關(guān)文章

  • NumPy數(shù)組復(fù)制與視圖詳解

    NumPy數(shù)組復(fù)制與視圖詳解

    NumPy 數(shù)組的復(fù)制和視圖是兩種不同的方式來創(chuàng)建新數(shù)組,它們之間存在著重要的區(qū)別,本文將給大家詳細(xì)介紹一下NumPy數(shù)組復(fù)制與視圖,并通過代碼示例講解的非常詳細(xì),需要的朋友可以參考下
    2024-05-05
  • Python+Turtle制作海龜迷宮小游戲

    Python+Turtle制作海龜迷宮小游戲

    這篇文章主要是帶大家寫一個(gè)利用Turtle庫制作的一款海龜闖關(guān)的三大迷宮,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Python有一定幫助,感興趣的可以了解一下
    2022-04-04
  • Python實(shí)現(xiàn)生命游戲的示例代碼(tkinter版)

    Python實(shí)現(xiàn)生命游戲的示例代碼(tkinter版)

    生命游戲是由劍橋大學(xué)約翰·何頓·康威設(shè)計(jì)的計(jì)算機(jī)程序,一時(shí)吸引了各行各業(yè)一大批人的興趣。本文將用Python實(shí)現(xiàn)這一游戲,感興趣的可以嘗試一下
    2022-08-08
  • python實(shí)現(xiàn)測試工具(二)——簡單的ui測試工具

    python實(shí)現(xiàn)測試工具(二)——簡單的ui測試工具

    這篇文章主要介紹了python如何實(shí)現(xiàn)簡單的ui測試工具,幫助大家更好的利用python進(jìn)行測試工作,感興趣的朋友可以了解下
    2020-10-10
  • python虛擬環(huán)境創(chuàng)建的兩種方法

    python虛擬環(huán)境創(chuàng)建的兩種方法

    本文主要介紹了python虛擬環(huán)境創(chuàng)建的兩種方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-05-05
  • 詳解Python 關(guān)聯(lián)規(guī)則分析

    詳解Python 關(guān)聯(lián)規(guī)則分析

    這篇文章主要介紹了Python 關(guān)聯(lián)規(guī)則分析的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)使用python,感興趣的朋友可以了解下
    2021-03-03
  • python實(shí)現(xiàn)簡單的井字棋小游戲

    python實(shí)現(xiàn)簡單的井字棋小游戲

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)簡單的井字棋小游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • python使用ctypes模塊調(diào)用windowsapi獲取系統(tǒng)版本示例

    python使用ctypes模塊調(diào)用windowsapi獲取系統(tǒng)版本示例

    這篇文章主要介紹了python使用ctypes模塊調(diào)用windowsapi獲取系統(tǒng)版本示例,需要的朋友可以參考下
    2014-04-04
  • python繪制子圖技巧之plt.subplot、plt.subplots及坐標(biāo)軸修改

    python繪制子圖技巧之plt.subplot、plt.subplots及坐標(biāo)軸修改

    一個(gè)圖片里邊繪制多個(gè)圖像是繪圖中的常見需求,下面這篇文章主要給大家介紹了關(guān)于python繪制子圖技巧之plt.subplot、plt.subplots及坐標(biāo)軸修改的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-05-05
  • Django在視圖中使用表單并和數(shù)據(jù)庫進(jìn)行數(shù)據(jù)交互的實(shí)現(xiàn)

    Django在視圖中使用表單并和數(shù)據(jù)庫進(jìn)行數(shù)據(jù)交互的實(shí)現(xiàn)

    本文主要介紹了Django在視圖中使用表單并和數(shù)據(jù)庫進(jìn)行數(shù)據(jù)交互,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07

最新評(píng)論