亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

Python3網絡爬蟲實戰(zhàn)---4、數據庫的安裝:MySQL、MongoDB、Redis

xbynet / 3664人閱讀

摘要:運行結果如果運行結果一致則證明安裝成功。上一篇文章網絡爬蟲實戰(zhàn)請求庫安裝下一篇文章網絡爬蟲實戰(zhàn)數據庫的安裝

上一篇文章:Python3網絡爬蟲實戰(zhàn)---2、請求庫安裝:GeckoDriver、PhantomJS、Aiohttp
下一篇文章:Python3網絡爬蟲實戰(zhàn)---數據庫的安裝:MySQL、MongoDB、Redis

抓取下網頁代碼之后,下一步就是從網頁中提取信息,提取信息的方式有多種多樣,可以使用正則來提取,但是寫起來會相對比較繁瑣。在這里還有許多強大的解析庫,如 LXML、BeautifulSoup、PyQuery 等等,提供了非常強大的解析方法,如 XPath 解析、CSS 選擇器解析等等,利用它們我們可以高效便捷地從從網頁中提取出有效信息。

本節(jié)我們就來介紹一下這些庫的安裝過程。

1.2.1 LXML的安裝

LXML 是 Python 的一個解析庫,支持 HTML 和 XML 的解析,支持 XPath 解析方式,而且解析效率非常高。

1. 相關鏈接

官方網站:http://lxml.de

GitHub:https://github.com/lxml/lxml

PyPi:https://pypi.python.org/pypi/...

2. Mac下的安裝
pip3 install lxml

如果產生錯誤,可以執(zhí)行如下命令將必要的類庫安裝:

xcode-select --install

之后再重新運行 Pip 安裝就沒有問題了。

LXML 是一個非常重要的庫,后面的 BeautifulSoup、Scrapy 框架都需要用到此庫,所以請一定安裝成功。

3. 驗證安裝

安裝完成之后,可以在 Python 命令行下測試。

$ python3
>>> import lxml

如果沒有錯誤報出,則證明庫已經安裝好了。

1.2.2 BeautifulSoup的安裝

BeautifulSoup 是 Python 的一個 HTML 或 XML 的解析庫,我們可以用它來方便地從網頁中提取數據,它擁有強大的 API 和多樣的解析方式,本節(jié)我們了解下它的安裝方式。

1. 相關鏈接

官方文檔:https://www.crummy.com/softwa...

中文文檔:https://www.crummy.com/softwa...

PyPi:https://pypi.python.org/pypi/...

2. 準備工作

BeautifulSoup 的 HTML 和 XML 解析器是依賴于 LXML 庫的,所以在此之前請確保已經成功安裝好了 LXML 庫,具體的安裝方式參見上節(jié)。

3. Pip 安裝

目前 BeautifulSoup 的最新版本是 4.x 版本,之前的版本已經停止開發(fā)了,推薦使用 Pip 來安裝,安裝命令如下:

pip3 install beautifulsoup4

命令執(zhí)行完畢之后即可完成安裝。

4. 驗證安裝

安裝完成之后可以運行下方的代碼驗證一下。

from bs4 import BeautifulSoup
soup = BeautifulSoup("

Hello

", "lxml") print(soup.p.string)

運行結果:

Hello

如果運行結果一致則證明安裝成功。

注意在這里我們雖然安裝的是 beautifulsoup4 這個包,但是在引入的時候是引入的 bs4,這是因為這個包源代碼本身的庫文件夾名稱就是 bs4,所以安裝完成之后,這個庫文件夾就被移入到我們本機 Python3 的 lib 庫里,所以識別到的庫文件名稱就叫做 bs4,所以我們引入的時候就引入 bs4 這個包。

因此,包本身的名稱和我們使用時導入的包的名稱并不一定是一致的。

1.2.3 PyQuery的安裝

PyQuery 同樣是一個強大的網頁解析工具,它提供了和 jQuery 類似的語法來解析 HTML 文檔,支持 CSS 選擇器,使用非常方便,本節(jié)我們了解下它的安裝方式。

1. 相關鏈接

GitHub:https://github.com/gawel/pyquery

PyPi:https://pypi.python.org/pypi/...

官方文檔:http://pyquery.readthedocs.io

2. Pip安裝
pip3 install pyquery
3. 驗證安裝

安裝完成之后,可以在 Python 命令行下測試。

$ python3
>>> import pyquery

如果沒有錯誤報出,則證明庫已經安裝好了。

1.2.4 Tesserocr的安裝

爬蟲過程中難免會遇到各種各樣的驗證碼,而大多數驗證碼還是圖形驗證碼,這時候我們可以直接用 OCR 來識別。

1. OCR

OCR,即 Optical Character Recognition,光學字符識別。是指通過掃描字符,然后通過其形狀將其翻譯成電子文本的過程。那么對于圖形驗證碼來說,它都是一些不規(guī)則的字符,但是這些字符確實是由字符稍加扭曲變換得到的內容。
例如這樣的驗證碼,如圖 1-22 和 1-23 所示:

圖 1-22 驗證碼

圖 1-23 驗證碼
對于這種驗證碼,我們便可以使用 OCR 技術來將其轉化為電子文本,然后爬蟲將識別結果提交給服務器,便可以達到自動識別驗證碼的過程。
Tesserocr 是 Python 的一個 OCR 識別庫,但其實是對 Tesseract 做的一層 Python API 封裝,所以它的核心是 Tesseract,所以在安裝 Tesserocr 之前我們需要先安裝 Tesseract,本節(jié)我們來了解下它們的安裝方式。

2. 相關鏈接

Tesserocr GitHub:https://github.com/sirfz/tess...

Tesserocr PyPi:https://pypi.python.org/pypi/...

Tesseract下載地址:http://digi.bib.uni-mannheim....

Tesseract GitHub:https://github.com/tesseract-...

Tesseract 語言包:https://github.com/tesseract-...

Tesseract 文檔:https://github.com/tesseract-...

3. Mac下的安裝

Mac 下首先使用 Homebrew 安裝 Imagemagick 和 Tesseract 庫:

brew install imagemagick 
brew install tesseract 

接下來再安裝 Tesserocr 即可:

pip3 install tesserocr pillow

這樣我們便完成了 Tesserocr 的安裝。

4. 驗證安裝

接下來我們可以使用 Tesseract 和 Tesserocr 來分別進行測試。
下面我們以如下的圖片為樣例進行測試,如圖 1-26 所示:

圖 1-26 測試樣例
圖片鏈接為:https://raw.githubusercontent...,可以直接保存或下載。
我們首先用命令行進行測試,將圖片下載保存為 image.png,然后用 Tesseract 命令行測試,命令如下:

tesseract image.png result -l eng && cat result.txt

運行結果:

Tesseract Open Source OCR Engine v3.05.01 with Leptonica
Python3WebSpider

我們調用了 tesseract 命令,第一個參數為圖片名稱,第二個參數 result 為結果保存的目標文件名稱,-l 指定使用的語言包,在此使用 eng 英文,然后再用 cat 命令將結果輸出。
第二行的運行結果便是圖片的識別結果,Python3WebSpider。
我們可以看到這時已經成功將圖片文字轉為電子文本了。
然后我們還可以利用 Python 代碼來測試,這里就需要借助于 Tesserocr 庫了,測試代碼如下:

import tesserocr
from PIL import Image
image = Image.open("image.png")
print(tesserocr.image_to_text(image))

如果在運行期間python3閃退,出現下面錯誤:

!strcmp(locale, "C"):Error:Assert failed:in file baseapi.cpp, line 209

就需要這樣運行了:

import locale
locale.setlocale(locale.LC_ALL,"C")

import tesserocr
from PIL import Image
image = Image.open("image.png")
print(tesserocr.image_to_text(image))

在這里我們首先利用 Image 讀取了圖片文件,然后調用了 tesserocr 的 image_to_text() 方法,再將將其識別結果輸出。
運行結果:

Python3WebSpider

另外我們還可以直接調用 file_to_text() 方法,也可以達到同樣的效果:

import tesserocr
print(tesserocr.file_to_text("image.png"))

運行結果:

Python3WebSpider

如果成功輸出結果,則證明 Tesseract 和 Tesserocr 都已經安裝成功。

上一篇文章:Python3網絡爬蟲實戰(zhàn)---2、請求庫安裝:GeckoDriver、PhantomJS、Aiohttp
下一篇文章:Python3網絡爬蟲實戰(zhàn)---數據庫的安裝:MySQL、MongoDB、Redis

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉載請注明本文地址:http://www.ezyhdfw.cn/yun/44018.html

相關文章

  • Python3網絡爬蟲實戰(zhàn)---4據庫安裝MySQL、MongoDB、Redis

    摘要:的安裝是一個輕量級的關系型數據庫,以表的形式來存儲數據,本節(jié)我們來了解下它的安裝方式。相關鏈接官方網站下載地址中文教程下的安裝推薦使用安裝,執(zhí)行命令即可。上一篇文章網絡爬蟲實戰(zhàn)解析庫的安裝下一篇文章網絡爬蟲實戰(zhàn)存儲庫的安裝 上一篇文章:Python3網絡爬蟲實戰(zhàn)---3、解析庫的安裝:LXML、BeautifulSoup、PyQuery、Tesserocr下一篇文章:Python3網絡...

    winterdawn 評論0 收藏0
  • Python3網絡爬蟲實戰(zhàn)---5、存儲庫安裝:PyMySQL、PyMongo、RedisPy、R

    摘要:相關鏈接官方文檔安裝推薦使用安裝,命令如下運行完畢之后即可完成的安裝。上一篇文章網絡爬蟲實戰(zhàn)數據庫的安裝下一篇文章網絡爬蟲實戰(zhàn)庫的安裝 上一篇文章:Python3網絡爬蟲實戰(zhàn)---4、數據庫的安裝:MySQL、MongoDB、Redis下一篇文章:Python3網絡爬蟲實戰(zhàn)---6、Web庫的安裝:Flask、Tornado 在前面一節(jié)我們介紹了幾個數據庫的安裝方式,但這僅僅是用來存...

    AlanKeene 評論0 收藏0
  • Python3網絡爬蟲實戰(zhàn)---33、數據存儲:非關系型據庫存儲:MongoDB

    摘要:列存儲數據庫,代表有等。運行結果返回結果是字典形式,即代表執(zhí)行成功,代表影響的數據條數。上一篇文章網絡爬蟲實戰(zhàn)數據存儲關系型數據庫存儲下一篇文章網絡爬蟲實戰(zhàn)數據存儲非關系型數據庫存儲 上一篇文章:Python3網絡爬蟲實戰(zhàn)---32、數據存儲:關系型數據庫存儲:MySQL下一篇文章:Python3網絡爬蟲實戰(zhàn)---34、數據存儲:非關系型數據庫存儲:Redis NoSQL,全稱 No...

    XanaHopper 評論0 收藏0
  • Python3網絡爬蟲實戰(zhàn)---32、數據存儲:關系型據庫存儲:MySQL

    摘要:關系型數據庫有多種,如等等。一致性與原子性是密切相關的。持久性持續(xù)性也稱永久性,指一個事務一旦提交,它對數據庫中數據的改變就應該是永久性的。如此一來,我們就可以實現主鍵不存在便插入數據,存在則更新數據的功能了。 上一篇文章:Python3網絡爬蟲實戰(zhàn)---31、數據存儲:文件存儲下一篇文章:Python3網絡爬蟲實戰(zhàn)---33、數據存儲:非關系型數據庫存儲:MongoDB 關系型數據...

    ghnor 評論0 收藏0
  • Python3網絡爬蟲實戰(zhàn)---6、Web庫安裝:Flask、Tornado

    摘要:在本書中用到的一些服務程序主要有。本節(jié)來分別介紹它們的安裝方法。的安裝是一個輕量級的服務程序,簡單易用靈活,在本書中我們主要用它來做一些服務,本節(jié)我們來了解下它的安裝方式。相關鏈接官方文檔安裝執(zhí)行完畢之后即可完成安裝。 上一篇文章:Python3網絡爬蟲實戰(zhàn)---5、存儲庫的安裝:PyMySQL、PyMongo、RedisPy、RedisDump下一篇文章:Python3網絡爬蟲實戰(zhàn)-...

    yeyan1996 評論0 收藏0

發(fā)表評論

0條評論

xbynet

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<