ホームページ  >  記事  >  バックエンド開発  >  Python Web クローラーを使用してファンド情報を取得する方法を段階的に説明します。

Python Web クローラーを使用してファンド情報を取得する方法を段階的に説明します。

Go语言进阶学习
Go语言进阶学习転載
2023-07-24 14:53:20893ブラウズ

1. はじめに

最初のいくつかの A先日ファンの方がファンド情報を聞きに来てくれたのでここで共有したいと思います、興味のあるお友達も積極的に試してみてください。

Python Web クローラーを使用してファンド情報を取得する方法を段階的に説明します。

2. データ取得

今回の対象となるWebサイトは、某ファンドの公式Webサイトです。クロールする必要があるデータは次の図に示されています。

Python Web クローラーを使用してファンド情報を取得する方法を段階的に説明します。上の図では、ファンド コードの列にさまざまな番号が付いていることがわかります。ランダムに 1 つをクリックすると、ファンドの詳細ページにアクセスできます。リンクも非常に規則的で、ファンド コードがシンボルになっています。 。

実は、この Web サイトは難しいものではありません。データは暗号化されておらず、Web ページ上の情報はソース コードで直接見ることができます。 Python Web クローラーを使用してファンド情報を取得する方法を段階的に説明します。

これにより、クロールの困難さが軽減されます。ブラウザーのパケット キャプチャ メソッドを通じて、特定のリクエスト パラメーターを確認できます。リクエスト パラメーター内で pi のみが変更されていることがわかります。この値はたまたまページに対応しているため、直接構築できます。リクエストパラメータ。 Python Web クローラーを使用してファンド情報を取得する方法を段階的に説明します。

コード実装プロセス

データ ソースを見つけたら、次のステップはコードを実装することです。いくつかのキーコードを出力します。

株式 ID データを取得します

response = requests.get(url, headers=headers, params=params, verify=False)
    pattern = re.compile(r&#39;.*?"(?P<items>.*?)".*?&#39;, re.S)
    result = re.finditer(pattern, response.text)
    ids = []
    for item in result:
        # print(item.group(&#39;items&#39;))
        gp_id = item.group(&#39;items&#39;).split(&#39;,&#39;)[0]

結果は以下のようになります:

Python Web クローラーを使用してファンド情報を取得する方法を段階的に説明します。

詳細ページのファンド情報を取得するための詳細ページリンクが後で作成されます。キーコードは次のとおりです。

response = requests.get(url, headers=headers)
response.encoding = response.apparent_encoding
selectors = etree.HTML(response.text)
danweijingzhi1 = selectors.xpath(&#39;//dl[@class="dataItem02"]/dd[1]/span[1]/text()&#39;)[0]
danweijingzhi2 = selectors.xpath(&#39;//dl[@class="dataItem02"]/dd[1]/span[2]/text()&#39;)[0]
leijijingzhi = selectors.xpath(&#39;//dl[@class="dataItem03"]/dd[1]/span/text()&#39;)[0]
lst = selectors.xpath(&#39;//div[@class="infoOfFund"]/table//text()&#39;)

結果は次の図に示すとおりです。特定の情報を対応する文字列に処理し、

csv

ファイルに保存すると、結果は次のようになります。 Python Web クローラーを使用してファンド情報を取得する方法を段階的に説明します。これにより、さらに統計とデータ分析を行うことができます。

Python Web クローラーを使用してファンド情報を取得する方法を段階的に説明します。

3. 概要

皆さんこんにちは、私は Python 上級者です。この記事では、主に Python Web クローラーを使用してファンド データ情報を取得する方法について説明します。このプロジェクトはそれほど難しくありませんが、落とし穴がいくつかあります。誰でも試してみることを歓迎します。何か問題が発生した場合は、私を友達として追加してください。私がそれを解決するお手伝いをします。

この記事は主に [ストック タイプ] の分類に基づいています。他のタイプはやったことがありません。ぜひ試してみてください。実際、ロジックは同じで、パラメーターを変更するだけです。

Python Web クローラーを使用してファンド情報を取得する方法を段階的に説明します。

以上がPython Web クローラーを使用してファンド情報を取得する方法を段階的に説明します。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はGo语言进阶学习で複製されています。侵害がある場合は、admin@php.cn までご連絡ください。