真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

python爬蟲之requests庫(kù)使用代理-創(chuàng)新互聯(lián)

今天小編分享的是關(guān)于python爬蟲的requests庫(kù)使用代理,可能大家對(duì)python爬蟲并不陌生,或者從來沒有了解過python爬蟲。但是不用擔(dān)心,今天小編會(huì)以最簡(jiǎn)單的描述來講python爬蟲的原理。

建網(wǎng)站原本是網(wǎng)站策劃師、網(wǎng)絡(luò)程序員、網(wǎng)頁設(shè)計(jì)師等,應(yīng)用各種網(wǎng)絡(luò)程序開發(fā)技術(shù)和網(wǎng)頁設(shè)計(jì)技術(shù)配合操作的協(xié)同工作。成都創(chuàng)新互聯(lián)專業(yè)提供網(wǎng)站設(shè)計(jì)制作、做網(wǎng)站,網(wǎng)頁設(shè)計(jì),網(wǎng)站制作(企業(yè)站、成都響應(yīng)式網(wǎng)站建設(shè)公司、電商門戶網(wǎng)站)等服務(wù),從網(wǎng)站深度策劃、搜索引擎友好度優(yōu)化到用戶體驗(yàn)的提升,我們力求做到極致!

      在看這篇文章之前,需要大家掌握的知識(shí)技能:

python基礎(chǔ)

html基礎(chǔ)

http狀態(tài)碼

讓我們看看這篇文章中有哪些知識(shí)點(diǎn):

get方法

post方法

header參數(shù),模擬用戶

data參數(shù),提交數(shù)據(jù)

proxies參數(shù),使用代理

進(jìn)階學(xué)習(xí)

安裝上requests庫(kù)

pip install requests

python爬蟲之requests庫(kù)使用代理

先來看下幫助文檔,看看requests的介紹,用python自帶的help命令

import requests

help(requests)

output:

Help on package requests:

NAME

requests

DESCRIPTION

Requests HTTP Library

~~~~~~~~~~~~~~~~~~~~~

Requests is an HTTP library, written in Python, for human beings. Basic GET

usage:

>>> import requests

>>> r = requests.get('https://www.python.org')

>>> r.status_code

200

>>> 'Python is a programming language' in r.content

True

... or POST:

>>> payload = dict(key1='value1', key2='value2')

>>> r = requests.post('https://httpbin.org/post', data=payload)

>>> print(r.text)

{

...

"form": {

"key2": "value2",

"key1": "value1"

},

...

}

The other HTTP methods are supported - see `requests.api`. Full documentation

is at .

:copyright: (c) 2017 by Kenneth Reitz.

:license: Apache 2.0, see LICENSE for more details.

這里解釋下,requests庫(kù)是由python編寫的對(duì)人類友好的http庫(kù),并且舉例了GET與POST的方法。

GET方法

好的,那我們自己來測(cè)試下,就以請(qǐng)求百度為例吧,,,(誰讓百度這么耐抗的)

import requests

r = requests.get('https://www.baidu.com')

print(r.status_code) #打印返回的http code

print(r.text) #打印返回結(jié)果的text

方便點(diǎn),截了個(gè)圖給大家看,返回的code是200,說明請(qǐng)求正常拉回網(wǎng)頁了。

看下返回的text,有點(diǎn)不對(duì)頭,少了一些html標(biāo)簽,最起碼百度兩個(gè)字得有吧。嗯,這是什么原因,,,

相信有些同學(xué)已經(jīng)想到了,是沒有真實(shí)模擬用戶的請(qǐng)求,你去爬數(shù)據(jù),還不模擬用戶請(qǐng)求,那肯定限制你啊。這個(gè)時(shí)候需要加一個(gè)header參數(shù)來搞定,至少要加一個(gè)user-agent吧。好,那咋們?nèi)フ乙粋€(gè)ua吧。別百度了,自己動(dòng)手,豐衣足食。教大家一個(gè)辦法,用火狐的開發(fā)者工具。

python爬蟲之requests庫(kù)使用代理

火狐瀏覽器的開發(fā)者工具

打開新標(biāo)簽 —— 按F12——訪問下百度——找到NetWork——隨便點(diǎn)開一個(gè)——往下翻——看到ua了吧,復(fù)制上。

import requests鄭州人流手術(shù)費(fèi)用 http://mobile.120csjlyy.com/

headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.131 Safari/537.36'}

r = requests.get('https://www.baidu.com', headers=headers)

print(r.status_code)

print(r.text)

嗯~~~數(shù)據(jù)有點(diǎn)多,往下翻翻,這下就正常了嘛,數(shù)據(jù)都有了。。。PS:不信?可以自己輸出一個(gè)html文件,瀏覽器打開看看唄

POST方法

只需要把get改成post就好了

import requests

headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.131 Safari/537.36'}

r = requests.post('https://www.baidu.com', headers=headers)

print(r.status_code)

print(r.text)

運(yùn)行下試試看。一般post都是用來提交表單信息的,嗯,這里找一個(gè)能提交數(shù)據(jù)的url,去post下。

用我自己寫的接口(PS:django寫的,挺方便),大家復(fù)制過去就好了。注意看代碼,data是要post的數(shù)據(jù),post方法里加了一個(gè)data參數(shù)。

import requests

headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.131 Safari/537.36'}

# post的數(shù)據(jù)

data = {"info": "biu~~~ send post request"}

r = requests.post('http://dev.kdlapi.com/testproxy', headers=headers, data=data) #加一個(gè)data參數(shù)

print(r.status_code)

print(r.text)

截個(gè)圖給大家看下,http code 200,body信息說的post成功,并且返回的了我自己的IP信息以及post的數(shù)據(jù)

使用代理

為什么用代理?一般網(wǎng)站都有屏蔽的限制策略,用自己的IP去爬,被封了那該網(wǎng)站就訪問不了,這時(shí)候就得用代理IP來解決問題了。封吧,反正封的不是本機(jī)IP,封的代理IP。

既然使用代理,得先找一個(gè)代理IP。PS:自己寫個(gè)代理服務(wù)器太麻煩了,關(guān)鍵是我也不會(huì)寫啊,,,哈哈哈

import requests

headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.131 Safari/537.36'}

# post的數(shù)據(jù)

data = {"info": "biu~~~ send post request"}

# 代理信息,由快代理贊助

proxy = '115.203.28.25:16584'

proxies = {

"http": "http://%(proxy)s/" % {'proxy': proxy},

"https": "http://%(proxy)s/" % {'proxy': proxy}

}

r = requests.post('http://dev.kdlapi.com/testproxy', headers=headers, data=data, proxies=proxies) #加一個(gè)proxies參數(shù)

print(r.status_code)

print(r.text)

主要方法里加個(gè)proxies參數(shù),這就用上代理IP了。

關(guān)于python爬蟲之requests庫(kù)使用代理就分享到這里了,當(dāng)然并不止以上和大家分析的辦法,不過小編可以保證其準(zhǔn)確性是絕對(duì)沒問題的。希望以上內(nèi)容可以對(duì)大家有一定的參考價(jià)值,可以學(xué)以致用。如果喜歡本篇文章,不妨把它分享出去讓更多的人看到。

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。


新聞名稱:python爬蟲之requests庫(kù)使用代理-創(chuàng)新互聯(lián)
鏈接URL:http://weahome.cn/article/iijdp.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部