ホームページ  >  記事  >  バックエンド開発  >  クローラーとして Python を使用することを選択した理由は何ですか?

クローラーとして Python を使用することを選択した理由は何ですか?

尚
オリジナル
2019-07-06 14:43:113779ブラウズ

クローラーとして Python を使用することを選択した理由は何ですか?

Web クローラーとは何ですか?

Web クローラーは、Web ページを自動的に抽出するプログラムです。検索エンジンのために World Wide Web から Web ページをダウンロードし、検索エンジンの重要なコンポーネントです。従来のクローラーは、1 つまたは複数の最初の Web ページの URL から開始し、最初の Web ページの URL を取得します。Web ページをクロールするプロセス中、現在のページから新しい URL を継続的に抽出し、特定の URL が得られるまでキューに入れます。システムの停止条件が満たされています

クローラの用途は何ですか?

一般的な検索エンジンの Web ページ コレクターとして。 (google、baidu) は垂直型検索エンジンです。科学研究​​: オンライン人間行動、オンライン コミュニティ進化、人間力学研究、計量社会学、複雑なネットワーク、データ マイニング、およびその他の分野では大量のデータが必要です。Web クローラーは強力です。関連データを収集するためのツール。のぞき見、ハッキング、スパム送信...

クローラーは検索エンジンにとって最初で最も簡単なステップです

クローラーとして Python を使用することを選択した理由は何ですか?

クローラーを作成するにはどの言語を使用する必要がありますか?

C、C。非常に効率的かつ高速で、Web 全体をクロールする一般的な検索エンジンに適しています。短所: 開発が遅く、執筆が臭くて長い。例: スカイネットのソース コード検索。スクリプト言語: Perl、Python、Java、Ruby。シンプルで習得が容易で、優れたテキスト処理により、Web コンテンツの詳細な抽出が容易になりますが、効率が高くないことがよくあります。C# は少数の Web サイトを集中的にクロールするのに適していますか? (情報管理の人々が好む言語のようです)

クローラーとして Python を選択する理由:

クロスプラットフォームで、Linux と Windows を適切にサポートしています。

科学コンピューティング、数値フィッティング: Numpy、Scipy

視覚化: 2D: Matplotlib (描画が非常に美しい)、3D: Mayavi2

複雑なネットワーク: Networkx 統計: およびR 言語インターフェイス: Rpy

対話型ターミナル

Web サイトの迅速な開発

シンプルな Python クローラー

import urllib
import urllib.request

def loadPage(url,filename):
    """
    作用:根据url发送请求,获取html数据;
    :param url:
    :return:
    """
    request=urllib.request.Request(url)
    html1= urllib.request.urlopen(request).read()
    return  html1.decode('utf-8')

def writePage(html,filename):
    """
    作用将html写入本地

    :param html: 服务器相应的文件内容
    :return:
    """
    with open(filename,'w') as f:
        f.write(html)
    print('-'*30)
def tiebaSpider(url,beginPage,endPage):
    """
    作用贴吧爬虫调度器,负责处理每一个页面url;
    :param url:
    :param beginPage:
    :param endPage:
    :return:
    """
    for page in range(beginPage,endPage+1):
        pn=(page - 1)*50
        fullurl=url+"&pn="+str(pn)
        print(fullurl)
        filename='第'+str(page)+'页.html'
        html= loadPage(url,filename)

        writePage(html,filename)



if __name__=="__main__":
    kw=input('请输入你要需要爬取的贴吧名:')
    beginPage=int(input('请输入起始页'))
    endPage=int(input('请输入结束页'))
    url='https://tieba.baidu.com/f?'
    kw1={'kw':kw}
    key = urllib.parse.urlencode(kw1)
    fullurl=url+key
    tiebaSpider(fullurl,beginPage,endPage)

Python 関連の技術記事の詳細については、次のリンクを参照してください。 Python チュートリアル 学ぶべきコラム!

以上がクローラーとして Python を使用することを選択した理由は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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