pythonネットワーク爬虫類(第一章)


pythonネットワーク爬虫類(第一章)
(内容はO’Reilly(人民郵電出版社)の「Pythonネットワーク爬虫権威ガイド」というブログは勉強の記録だけに使われています。後で使いやすいです。)
現在、このシリーズの記事(pythonネットワーク爬虫類ノート)の更新状況:第一章:本文第二章:pythonネットワーク爬虫類(第二章)の簡単な例:pythonネットワーク爬虫類(簡単な例)
皆さん、調べてください。足りないところや間違いがあったら教えてください。
コード:
from urllib.request import urlopen
from urllib.error import HTTPError
from urllib.error import URLError
from bs4 import BeautifulSoup

def getTitle(url):
    try:
        html = urlopen(url)
    except HTTPError as e:
        return None
    try:
        bs = BeautifulSoup(html.read(), 'html.parser')
        title = bs.body.h1
    except AttributeError as e:
        return None
    return title

title = getTitle('http://www.pythonscraping.com/pages/page1.html')
if title == None:
    print('Title could not be found!')
else:
    print(title)

説明:
1、urllibはpythonの標準ライブラリであり、ページからデータを要求し、cookieを処理し、要求ヘッダやユーザエージェントなどのメタデータを変更する機能も含む。urlopenは、ネットワークから取得したリモートオブジェクトを開くために使用されます。簡単にHTMLファイル、画像ファイル、または他のファイルストリームを取得できます。
from url lib.request import url open

html = urlopen(‘http://pythonscraping.com/pages/page1.html')
print(html.read())
2、Beautiful Soupライブラリ:HTMLコンテンツをBeautiful Soupオブジェクトに伝えることができます。
bs = BeautifulSoup(html.read(), ‘html.parser’)
#             HTML  ,           BeautifulSoup           。         ’html.parser’、’lxml'、 #'html5lib'
3、異常処理に必要な標準倉庫:urllib.error
from urllib.error import HTTPError
#HTTP  ,          (             )
from urllib.error import URLError
#      
try+exceptを使って、Noneオブジェクトの下のワードラベルを呼び出すと、AttributeErrエラーが発生します。具体的なコードは本文の先頭の総合コードを見てもいいです。