爬蟲系列1 python簡易爬蟲分析

2021-07-12 04:28:33 字數 1409 閱讀 4549

決定寫乙個小的爬蟲系列,本文是第一篇,講爬蟲的基本原理和簡易示例。

1、單個網頁的簡易爬蟲

**如下:

import urllib

import re

def gethtml(url):

"""通過頁面url獲取其對應的html內容

"""page = urllib.urlopen(url) #開啟頁面

content = page.read() #讀取頁面內容

return content

def getimage(html):

"""regx =r'src="(.+?\.jpg)" pic_ext' #利用正規表示式獲得url

2、爬取多網頁的框架

這裡只講基本思想:第一步是選擇乙個起始頁面,可以直接選擇某個**的主頁作為起始頁面;第二步是分析這個起始頁面的所有鏈結,然後爬取所有鏈結的內容;第三步就是無休無止的遞迴過程,分析爬蟲所及的所有子頁面內部鏈結,如果沒有爬取過,則繼續無休無止的爬取。

借用知乎上謝科兄弟的一段**來說明。設定初始頁面initial_page,爬蟲就從這裡開始獲取頁面,url_queue用來存將要爬取的頁面佇列,seen用來存爬取過的頁面。

import queue

initial_page =""

url_queue =queue.queue()

seen = set()

seen.insert(initial_page)

url_queue.put(initial_page)

while true:

if url_queue.size()>0:

current_url = url_queue.get() #取出隊例中第乙個的url

store(current_url) #把這個url代表的網頁儲存好

for next_url inextract_urls(current_url): #提取把這個url裡鏈向的url

if next_url not in seen:

seen.put(next_url)

url_queue.put(next_url)

else:

break

1Python 爬蟲介紹

python 爬蟲介紹 分類 程式設計技術 一 什麼是爬蟲 爬蟲 一段自動抓取網際網路資訊的程式,從網際網路上抓取對於我們有價值的資訊。二 python爬蟲架構 url管理器 包括待爬取的url位址和已爬取的url位址,防止重複抓取url和迴圈抓取url,實現url管理器主要用三種方式,通過記憶體 ...

Python簡易爬蟲

服務端 from flask import flask,request import os defshow if os.path.exists students.txt st st st fobj open students.txt rt encoding utf 8 while true 讀取一行...

python簡易爬蟲製作

編譯環境 pycharm 4.5.3 python版本 3.5.1 以knewone為例 frombs4importbeautifulsoup importrequests importtime url web data requests.get url 利用requests訪問網頁 soup be...