python簡單爬蟲爬取佇列的實現

2021-07-15 15:29:14 字數 763 閱讀 5808

deque()是雙端佇列。set()中不允許出現重複的內容。

import re

import urllib

import urllib.request

from collections import deque

queue=deque()#待抓取的網頁

visited=set()#已經抓取過的網頁

url=''

num=0

while queue:

url=queue.popleft()#從左側取出乙個鏈結

visited.add(url)

num=num+1

print('正在抓取第',num,'條鏈結')

urlop=urllib.request.urlopen(url)

if 'html' not in urlop.getheader('content-type'):#不是html頁面 #

continue

try:

data=urlop.read().decode('utf-8')

except:

continue

linkre=re.compile('href=\"(.+?)\"')#利用正規表示式,取出所有鏈結

for x in linkre.findall(data):#遍歷上面的鏈結 集合

print(x,'加入佇列')

Python簡單爬蟲(爬取天氣資訊)

初學python,學到python爬蟲時在網上找資料,發現找到的大部分都是前部分內容對運作方式介紹,然後就直接上 了,這樣對像我一樣的小白來說比較困難,的注釋較少,部分 塊沒有詳細說明運作方式和具體作用,所以寫此筆記方便別人和自己以後進行學習檢視。作業系統window python2.7.10 wi...

簡單的爬蟲爬取文章

我們會用一些簡單的爬蟲去爬取 等,那麼在別人的 中我們的應選擇對應的標題等資料作為爬取的內容標桿 如以下 模擬瀏覽器發請求 connection connect jsoup.connect document doc connect.get elements select doc.select lis...

Python 爬蟲爬取網頁

工具 python 2.7 import urllib import urllib2 defgetpage url 爬去網頁的方法 request urllib.request url 訪問網頁 reponse urllib2.urlopen request 返回網頁 return response...