ホームページ > バックエンド開発 > Python チュートリアル > Python はどのようにして動的 Web サイトのコンテンツをスクレイピングできるのでしょうか?

Python はどのようにして動的 Web サイトのコンテンツをスクレイピングできるのでしょうか?

Barbara Streisand
リリース: 2024-12-21 10:48:16
オリジナル
668 人が閲覧しました
<p>How Can Python Scrape Dynamic Website Content?

<p>Python を使用した動的コンテンツのスラップ

<p>静的 HTML からプレーン テキストを取得するのは簡単ですが、動的コンテンツの場合は別の話になります。 JavaScript には、urllib2 などの Python の HTTP リクエスト ライブラリにすぐにアクセスできないコンテンツが埋め込まれます。

<p>動的コンテンツへのアクセス

<p>動的コンテンツにアクセスするために、Python は Web をシミュレートする外部ツールを利用できます。ブラウザ。これらのツールは JavaScript を実行し、レンダリングされたページ コンテンツを返します。

<p>1. Selenium と PhantomJS:

  • PhantomJS (ヘッドレス ブラウザ) をインストールし、パスにあることを確認します。
  • Selenium の Python ライブラリを使用して、PhantomJS を Web ドライバーとしてインスタンス化します。
  • 対象のページに移動し、次の要素を見つけます。興味があります。
<p>2. dryscape (Python 2 のみ):

  • pip を使用して dryscrape をインストールします。
  • dryscrape セッションを開き、ターゲット ページにアクセスします。
  • レンダリングされたページを取得しますとしてのコンテンツstring.
<p>

<p>動的 JavaScript を使用したサンプル HTML ページを考えてみましょう:

<p>
ログイン後にコピー
ログイン後にコピー
<p>JS なしサポート:

import requests
from bs4 import BeautifulSoup

response = requests.get(my_url)
soup = BeautifulSoup(response.text)
print(soup.find(id="intro-text"))
ログイン後にコピー
<p>出力:

<p>
ログイン後にコピー
ログイン後にコピー
<p>JS サポートあり(セレン):

from selenium import webdriver

driver = webdriver.PhantomJS()
driver.get(my_url)
print(driver.find_element_by_id("intro-text").text)
ログイン後にコピー
<p>出力:

Yay! Supports javascript
ログイン後にコピー

以上がPython はどのようにして動的 Web サイトのコンテンツをスクレイピングできるのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート