ホームページ >バックエンド開発 >Python チュートリアル >Python クローラーはどのモジュールを呼び出す必要がありますか?

Python クローラーはどのモジュールを呼び出す必要がありますか?

尚
オリジナル
2019-07-11 09:13:044086ブラウズ

Python クローラーはどのモジュールを呼び出す必要がありますか?

一般的に使用される Python クローラー モジュール:

関連する推奨事項: Python クローラー ライブラリと関連ツール

Python 標準ライブラリ ——urllib モジュール

機能: URL と http プロトコルを開く

注: Python 3.x の urllib ライブラリと urilib2 ライブラリは、urllib ライブラリにマージされました。 このうち、urllib2.urlopen() は urllib.request.urlopen() になり、urllib2.Request() は urllib.request.Request() になります

urllib リクエストは Web ページ

urllib を返します。 request.urlopen

urllib.request.open(url[,data,[timeout,[cafile,[capth[,cadefault,[context]]]]]])

urllib.requset.urlioen は、HTTP (メイン)、HTTPS、FTP、プロトコル URL

ca 認証

データを開くことができます 投稿モードで URL を送信します # を使用します

##ネットワーク アドレスを送信するための URL (フロントエンド全体にはプロトコル名が必要で、バックエンドにはポート http://192.168.1.1:80 が必要です)

timeout タイムアウト設定

##関数はオブジェクトを返します。追加のメソッドが 3 つあります。

geturl() は応答の URL 情報を返します。

URL リダイレクトでよく使用されます。 info() は応答の基本情報を返します。

getcode() は応答ステータス コードを返します

例:

#coding:utf-8
import urllib.request
import time
import platform


#清屏函数(无关紧要 可以不写)
def clear():
    print(u"内容过多 3秒后清屏")
    time.sleep(3)
    OS = platform.system()
    if (OS == u'Windows'):
        os.system('cls')
    else:
        os.system('clear')
#访问函数
def linkbaidu():
    url = 'http://www.baidu.com'
    try:
        response = urllib.request.urlopen(url,timeout=3)
    except urllib.URLError:
        print(u'网络地址错误')
        exit()
    with open('/home/ifeng/PycharmProjects/pachong/study/baidu.txt','w') as fp:
        response = urllib.request.urlopen(url,timeout=3)
        fp.write(response.read())
    print(u'获取url信息,response.geturl()\n:%s'%response.getrul())
    print(u'获取返回代码,response.getcode()\n:%s' % response.getcode())
    print(u'获取返回信息,response.info()\n:%s' % response.info())
    print(u"获取的网页信息经存与baidu.txt")


if __name__ =='main':
    linkbaidu()

Python 標準ライブラリ – ロギング モジュール

ロギング モジュールは、次の関数を置き換えることができます。 print 関数を実行し、標準をログ ファイルに出力します。 それを保存し、loggin モジュールを使用してデバッグ

re モジュール

正規表現

## を部分的に置き換えます。

#sys モジュール

システム関連モジュール

sys.argv (すべてのコマンド ラインを含むリストを返します)

sys.exit (プログラムを終了します)

Scrapy フレームワーク

urllib と re を一緒に使うのは時代遅れすぎます。今の主流は Scrapy フレームワークです。

Python 関連の技術記事の詳細については、こちらをご覧ください。

Python チュートリアル

列で学習してください。

以上がPython クローラーはどのモジュールを呼び出す必要がありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。