日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

python中urllib.request和requests的使用及區(qū)別詳解

瀏覽:160日期:2022-07-26 13:28:36

urllib.request

我們都知道,urlopen()方法能發(fā)起最基本對(duì)的請(qǐng)求發(fā)起,但僅僅這些在我們的實(shí)際應(yīng)用中一般都是不夠的,可能我們需要加入headers之類的參數(shù),那需要用功能更為強(qiáng)大的Request類來(lái)構(gòu)建了

在不需要任何其他參數(shù)配置的時(shí)候,可直接通過(guò)urlopen()方法來(lái)發(fā)起一個(gè)簡(jiǎn)單的web請(qǐng)求

發(fā)起一個(gè)簡(jiǎn)單的請(qǐng)求

import urllib.requesturl=’https://www.douban.com’webPage=urllib.request.urlopen(url)print(webPage)data=webPage.read()print(data)print(data.decode(’utf-8’))

urlopen()方法返回的是一個(gè)http.client.HTTPResponse對(duì)象,需要通過(guò)read()方法做進(jìn)一步的處理。一般使用read()后,我們需要用decode()進(jìn)行解碼,通常為utf-8,經(jīng)過(guò)這些步驟后,最終才獲取到我們想要的網(wǎng)頁(yè)。

添加Headers信息

import urllib.requesturl=’https://www.douban.com’headers = { ’User-Agent’: ’Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.186 Safari/537.36’, }response=urllib.request.Request(url=url,headers=headers)webPage=urllib.request.urlopen(response)print(webPage.read().decode(’utf-8’))

使用Request類返回的又是一個(gè)urllib.request.Request對(duì)象了。

通常我們爬取網(wǎng)頁(yè),在構(gòu)造http請(qǐng)求的時(shí)候,都需要加上一些額外信息,什么Useragent,cookie等之類的信息,或者添加代理服務(wù)器。往往這些都是一些必要的反爬機(jī)制

requests

通常而言,在我們使用python爬蟲(chóng)時(shí),更建議用requests庫(kù),因?yàn)閞equests比urllib更為便捷,requests可以直接構(gòu)造get,post請(qǐng)求并發(fā)起,而urllib.request只能先構(gòu)造get,post請(qǐng)求,再發(fā)起。

import requestsurl=’https://www.douban.com’headers = { ’User-Agent’: ’Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.186 Safari/537.36’,}get_response = requests.get(url,headers=headers,params=None)post_response=requests.post(url,headers=headers,data=None,json=None)print(post_response)print(get_response.text)print(get_response.content)print(get_response.json)

get_response.text得到的是str數(shù)據(jù)類型。

get_response.content得到的是Bytes類型,需要進(jìn)行解碼。作用和get_response.text類似。

get_response.json得到的是json數(shù)據(jù)。

總而言之,requests是對(duì)urllib的進(jìn)一步封裝,因此在使用上顯得更加的便捷,建議小伙伴們?cè)趯?shí)際應(yīng)用當(dāng)中盡量使用requests。

補(bǔ)充知識(shí):python中urllib.request.Request()與urllib.request.urlopen()區(qū)別

蟒蛇中urllib.request.Request()與urllib.request.urlopen()的區(qū)別:

相對(duì)于urllib.request.urlopen()來(lái)說(shuō)urllib.request.Request是進(jìn)一步的包裝請(qǐng)求,下面是請(qǐng)求類的源碼示例:

class Request: # 主要看這塊,構(gòu)造函數(shù)中指明了Request進(jìn)一步包裝請(qǐng)求中可以傳遞的參數(shù)有(url,data,headers, # origin_req_host,unverifiable,method) def __init__(self, url, data=None, headers={}, origin_req_host=None, unverifiable=False, method=None): self.full_url = url self.headers = {} self.unredirected_hdrs = {} self._data = None self.data = data self._tunnel_host = None for key, value in headers.items(): self.add_header(key, value) if origin_req_host is None: origin_req_host = request_host(self) self.origin_req_host = origin_req_host self.unverifiable = unverifiable if method: self.method = method pass

我們可以這樣使用(以下是模擬有道字典翻譯發(fā)送的請(qǐng)求):

# 請(qǐng)求地址urlurl = 'http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule' # 請(qǐng)求頭request_headers = { ’Host’:’fanyi.youdao.com’, 'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.108 Safari/537.36',} # 發(fā)送給服務(wù)器的表單form_data = { 'i': word, 'from': 'AUTO', 'to': 'AUTO', 'smartresult': 'dict', 'doctype': 'json', 'version': '2.1', 'keyfrom': 'fanyi.web', 'action': 'FY_BY_REALTIME', 'typoResult': 'false'} # POST發(fā)送的data必須為bytes或bytes類型的可迭代對(duì)象,不能是字符串form_data = urllib.parse.urlencode(form_data).encode() # 構(gòu)造請(qǐng)求對(duì)象Requestreq = urllib.request.Request(url, data=form_data, headers=request_headers) # 發(fā)起請(qǐng)求response = urllib.request.urlopen(req)data = response.read().decode()print(data)

所以,總的來(lái)說(shuō),如果我們?cè)讷@取請(qǐng)求對(duì)象時(shí),不需要過(guò)多的參數(shù)傳遞,我么可以直接選擇urllib.request.urlopen();如果需要進(jìn)一步的包裝請(qǐng)求,則需要用urllib.request里。的urlopen()進(jìn)行包裝處理。

以上這篇python中urllib.request和requests的使用及區(qū)別詳解就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Python 編程
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
伊人久久高清| 精品日本视频| 久久精品国产福利| 日韩黄色免费网站| 免费成人在线观看| 婷婷综合激情| 国产美女一区| 影音先锋久久精品| 亚洲三级在线| 久久国产人妖系列| 中文字幕一区二区精品区| 亚洲经典在线| 最新国产精品视频| 四虎成人精品一区二区免费网站 | 色老板在线视频一区二区| 成人亚洲欧美| 蜜臀av免费一区二区三区| 91精品综合| 先锋亚洲精品| 亚洲免费毛片| 国产精品调教| 捆绑调教日本一区二区三区| 香蕉人人精品| 97久久亚洲| 精品视频97| 99免费精品| 亚洲精品欧美| 国产精品一区二区中文字幕| 久久精品国产成人一区二区三区| 免费在线看一区| 日本一区中文字幕| av高清不卡| 日韩理论片av| 日韩中文字幕亚洲一区二区va在线 | 国产精品videossex久久发布| 国产精品久久久久久妇女 | 日韩理论视频| 日韩一区二区久久| 国产精品毛片久久久| 日韩电影在线视频| 欧美日韩亚洲一区三区| 精品国产亚洲一区二区在线观看| 亚洲一区激情| 成人日韩av| 欧美日韩网址| 亚洲综合另类| 免费一级欧美在线观看视频 | 欧美日韩在线精品一区二区三区激情综合 | 欧美日韩视频网站| 自拍自偷一区二区三区| 国产不卡一区| 日本aⅴ精品一区二区三区 | 国产精品一区二区三区美女 | 日本国产亚洲| 午夜亚洲福利在线老司机| 国产福利91精品一区二区| 日本久久成人网| 免费不卡在线观看| 国产日韩一区| 国产亚洲一区二区手机在线观看| 亚洲精品视频一二三区| 色综合狠狠操| 五月激激激综合网色播| 欧美/亚洲一区| 日韩中文影院| 欧美13videosex性极品| 中文av在线全新| 9999国产精品| 色一区二区三区| 麻豆成全视频免费观看在线看| 精品午夜久久| 精品成人免费一区二区在线播放| 欧美亚洲综合视频| 久久久久久美女精品| 精品网站aaa| 国产毛片一区二区三区| 亚洲精品欧美| 亚洲精品高潮| 国产欧美视频在线| 精品一区二区三区中文字幕视频| 亚洲网站视频| 日韩激情精品| 日韩国产精品久久久| 欧美欧美黄在线二区| 成人在线黄色| 亚洲91视频| 日韩一级精品| 亚洲精品乱码| 国产精品99久久免费| se01亚洲视频 | 亚洲国产一区二区在线观看| 欧美精品一线| 国产精品香蕉| 欧美黑人做爰爽爽爽| 麻豆成人91精品二区三区| 97精品国产| 欧美日韩在线二区| 日韩在线观看中文字幕| 国产精品高清一区二区| 神马久久午夜| 日韩精品一区二区三区中文字幕| 日韩欧美中文| 国产99精品| 伊人久久成人| 欧美aa在线视频| 在线综合视频| 国产精品成久久久久| 国产模特精品视频久久久久| 久久成人福利| 日韩中文字幕av电影| 亚洲黄色免费av| 亚洲精品日本| 欧美69视频| 黄在线观看免费网站ktv| 三级久久三级久久久| 日韩精品水蜜桃| 国产毛片精品久久| 在线精品一区| 日韩一级不卡| 国产成人精品一区二区免费看京| 日韩国产欧美在线播放| 日韩在线卡一卡二| 亚洲二区在线| 国产精品国产一区| 国产精品一页| 欧美日韩夜夜| 亚洲一区二区三区四区电影| 日韩精品看片| 人人精品亚洲| 美女福利一区二区三区| 国产在线不卡一区二区三区| 国产欧美日韩在线观看视频| 亚洲一二av| 日本一区二区三区中文字幕| 久久精品中文| 91精品久久久久久久久久不卡| 久久久久久久欧美精品| 高清久久精品| 黄毛片在线观看| 欧美日韩国产v| 图片区亚洲欧美小说区| 国产婷婷精品| 亚洲欧美网站在线观看| 久久精品超碰| 欧美日本精品| 国产精品chinese| 天堂av在线| 好看的亚洲午夜视频在线| 狠狠色狠狠色综合日日tαg| 天使萌一区二区三区免费观看| 美女久久久久| 亚洲伊人精品酒店| 日本va欧美va瓶| 精品三级av| 亚洲精品一区二区妖精| 亚洲免费成人av在线| 另类欧美日韩国产在线| 久久三级视频| 免费在线观看精品| 日本成人在线视频网站| 国产精品99视频| 宅男噜噜噜66国产日韩在线观看| 日韩av在线免费观看不卡| 高清日韩欧美| 亚洲一区二区小说| 精品久久福利| 国产一区白浆| 国产精品magnet| 狠狠色综合网| 精品国产一级| 亚洲精品综合| 国产传媒av在线| 天堂av一区| 午夜久久福利| 国产精品sss在线观看av| 欧美亚洲激情| 国产精品蜜月aⅴ在线| 亚洲免费中文| 中文字幕在线视频网站| 欧美欧美黄在线二区| 日韩午夜在线| 日韩欧美中文| 麻豆精品在线| 日韩激情网站| 视频一区欧美日韩| 国产99精品一区| 欧美日韩亚洲一区二区三区在线| 久久精品高清| 精品免费视频| 免费不卡在线观看| 欧美日韩第一| 中文字幕在线视频久| 欧美a在线观看| 国产视频一区二| 欧美另类中文字幕| 亚洲2区在线| 美女国产一区| 中文字幕成人| 日韩av网站在线观看| 中文字幕日韩欧美精品高清在线|