初體驗 Python爬蟲網路收集 一

2021-08-19 20:10:44 字數 2557 閱讀 2427

python語言最近榮登最受歡迎語言之榜首,看來學習python是目前相當明智的,對於python的學習,z(本人簡稱)我是舉雙手贊成的,甚至開始慫恿老婆和我一起學,由於python語言的簡潔易用,這裡直接面對已經有程式設計基礎的讀者。

z寫這裡,主要是自己學習過程,好記性不如爛筆頭,熟才能生巧;其次,好東西要給大家分享了才叫好東西。

話不多說,開始!

平時大家上網都是,開啟瀏覽器,輸入google**,然後就能看到瀏覽器傳送過來的谷歌的主頁資訊,這裡大部分的操作幾乎都被計算機暗中執行了,然而我們學習網路資料採集,就必須要衝破一些介面的遮擋,不僅僅在瀏覽器層,有時候也包含網路連線層。

from urllib.request import urlopen

html = urlopen("")

print(html.read())

z這裡用的是 ubuntuos,所以上面的**以 test.py 名稱儲存本地,然後在終端輸入:

$python3 scrapetest.py
注意,本地系統要安裝 python3.x 才能執行,然後在終端能夠看到網頁的全部html源**,這裡的 urllib 庫是 python 的標準庫,我們會大量的用到這個庫,所以可以去閱讀這個庫的 python 文件(文件點這裡)。

這個庫很智慧型,它能通過定位 html 標籤來格式化和組織複雜的網路資訊,以物件的形式給我們展示 xml 結構資訊。

由於 beautifulsoup 庫不是 python 的標準庫,需要單獨安裝,ubuntu 的安裝過程:

$sudo apt-get install python-bs4
安裝成功在終端測試一下:

$python3

>>>

from bs4 import beautifulsoup

如果不報錯就是可以了。

回到上面的栗子,現在z想要獲取標題的 h1 標籤的內容,python**:

from urllib.request import urlopen

from bs4 import beautifulsoup

html = urlopen("")

bsobj = beautifulsoup(html.read())

print(bsobj.h1)

an interesting titleh1>
網路是很複雜的,有很多的突發情況,採集資料最怕的是興沖沖寫好了爬蟲,執行,去睡覺,第二天一看,執行開始就報異常終止了,所以z寫**,一定要多考慮爬蟲可能會遇到的各種突發異常。

# 返回空值,中斷程式,或者執行另乙個方案

else:

# 程式繼續。注意:如果你已經在上面異常捕捉那一段**裡返回或中斷(break),

# 那麼就不需要使用else語句了,這段**也不會執行如果上面出問題,會返回 none 值,html 這個物件就要做判斷了:

if html is

none:

print("url is not found")

else:

# 程式繼續

然後看後面,如果標籤找不到,不存在,bsobj 就是 none,也會報錯,報錯如下:

attributeerror: 'nonetype'

object has no attribute 'sometag'

所以上面的初體驗**可以改一下:

print(title)總結上述,寫爬蟲,重要的是**的格局,可以慢慢從簡單的布局開始嘗試,有問題,就改,然後改到一定程度,可以重新構思**的布局,這個構思的過程才是我們最寶貴的經驗!!!

萬事開頭難,初體驗終於加班寫好,待z繼續學習,分享給大家吧!

Python爬蟲之初體驗

python爬蟲,一般用於抓取特定的內容,最近想學學,通過網路抓取自己想要的內容,於是乎學習了一下python,用乙個小案例來紀念一下學習的成果。coding utf 8 import urllib import re 定義個函式 抓取網頁內容 def gethtml url webpage url...

python爬蟲模擬登入初體驗

第一次學習爬蟲,自己真是醉醉噠,因為實驗室專案需要,所以迅速學習了一下,這次做的是乙個帶cookie的模擬登入,其中遇到了許許多多的問題,最難的就是要訪問的頁面加入了csrf跨站請求偽造驗證 因為我是渣渣,所以感到很難做 和如何帶cookie來模擬登入,最後在好友某殷的幫助下,順利解決了問題。先貼 ...

爬蟲利器初體驗

scrapy 資料流 scrapy 元件 爬取豆瓣電影 top250 前言為什麼要學 scrapy 呢?看下圖,就清楚了。很多招聘要求都有 scrapy,主要是因為 scrapy 確實很強。那到底強在 呢?請在文中找答案。scrapy 資料流 首先我們先來學習一下 scrapy 的工作流程。scra...