91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么用python扒網頁

發布時間:2021-11-25 09:12:47 來源:億速云 閱讀:125 作者:iii 欄目:大數據

這篇文章主要介紹“怎么用python扒網頁”,在日常操作中,相信很多人在怎么用python扒網頁問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”怎么用python扒網頁”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

python爬蟲網頁的基本流程:

  • 首先選取一部分精心挑選的種子URL。

  • 將這些URL放入待抓取URL隊列。

  • 從待抓取URL隊列中讀取待抓取隊列的URL,解析DNS,并且得到主機的IP,并將URL對應的網頁下載下來,存儲進已下載網頁庫中。此外,將這些URL放進已抓取URL隊列。

  • 分析已抓取URL隊列中的URL,從已下載的網頁數據中分析出其他URL,并和已抓取的URL進行比較去重,最后將去重過的URL放入待抓取URL隊列,從而進入下一個循環。

1、HTTP請求實現

使用urllib2/urllib實現:

urllib2和urllib是Python中的兩個內置模塊,要實現HTTP功能,實現方式是以urllib2為主,urllib為輔。

urllib2提供一個基礎函數urlopen,通過向指定的URL發出請求來獲取數據。最簡單的形式是:

import urllib2response=urllib2.urlopen('http://www.zhihu.com')html=response.read()print html

其實可以將上面對http://www.zhihu.com的請求響應分為兩步,一步是請求,一步是響應,形式如下:

import urllib2
# 請求
request=urllib2.Request('http://www.zhihu.com')
# 響應
response = urllib2.urlopen(request)
html=response.read()
print html

還有post請求實現:

import urllibimport urllib2url = 'http://www.xxxxxx.com/login'postdata = {'username' : 'qiye',    'password' : 'qiye_pass'}# info 需要被編碼為urllib2能理解的格式,這里用到的是urllibdata = urllib.urlencode(postdata)req = urllib2.Request(url, data)response = urllib2.urlopen(req)html = response.read()

將上面的例子改寫一下,加上請求頭信息,設置一下請求頭中的User-Agent域和Referer域信息。2、請求頭headers處理

import urllibimport urllib2url = 'http://www.xxxxxx.com/login'user_agent = 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)'referer='http://www.xxxxxx.com/'postdata = {'username' : 'qiye',    'password' : 'qiye_pass'}# 將user_agent,referer寫入頭信息headers={'User-Agent':user_agent,'Referer':referer}data = urllib.urlencode(postdata)req = urllib2.Request(url, data,headers)response = urllib2.urlopen(req)html = response.read()

urllib2對Cookie的處理也是自動的,使用CookieJar函數進行Cookie的管理。如果需要得到某個Cookie項的值,可以這么做:3、Cookie處理

import urllib2
import cookielib
cookie = cookielib.CookieJar()
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cookie))
response = opener.open('http://www.zhihu.com')
for item in cookie:
   print item.name+':'+item.value

但是有時候會遇到這種情況,我們不想讓urllib2自動處理,我們想自己添加Cookie的內容,可以通過設置請求頭

import  urllib2
opener = urllib2.build_opener()
opener.addheaders.append( ( 'Cookie', 'email=' + "xxxxxxx@163.com" ) )
req = urllib2.Request( "http://www.zhihu.com/" )
response = opener.open(req)
print response.headers
retdata = response.read()

到此,關于“怎么用python扒網頁”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

厦门市| 行唐县| 皮山县| 新兴县| 安陆市| 西畴县| 大姚县| 蓬莱市| 益阳市| 庆城县| 绥化市| 故城县| 岑巩县| 中阳县| 大英县| 成武县| 新化县| 平度市| 新乡市| 鱼台县| 鄯善县| 五家渠市| 玉门市| 潼关县| 莫力| 兴宁市| 墨江| 曲阜市| 浦东新区| 旅游| 西华县| 临洮县| 英吉沙县| 奈曼旗| 开鲁县| 顺昌县| 乐昌市| 平度市| 筠连县| 和田市| 秦皇岛市|