15

Python 3 を使用しており、Web サイトからデータを取得しようとしています。ただし、このデータは動的に読み込まれ、現在のコードは機能しません。

url = eveCentralBaseURL + str(mineral)
print("URL : %s" % url);

response = request.urlopen(url)
data = str(response.read(10000))

data = data.replace("\\n", "\n")
print(data)

特定の値を見つけようとしているところで、「4.48」ではなく「{{formatPrice median}}」などの代わりにテンプレートを見つけています。

プレースホルダー テキストの代わりに値を取得できるようにするにはどうすればよいですか?

編集:これは、情報を抽出しようとしている特定のページです。テンプレート {{formatPrice median}} を使用する「中央値」値を取得しようとしています

編集 2: Selenium と BeautifulSoup を使用するようにプログラムをインストールしてセットアップしました。

私が今持っているコードは次のとおりです。

from bs4 import BeautifulSoup
from selenium import webdriver

#...

driver = webdriver.Firefox()
driver.get(url)

html = driver.page_source
soup = BeautifulSoup(html)

print "Finding..."

for tag in soup.find_all('formatPrice median'):
    print tag.text

これは、実行中のプログラムのスクリーンショットです。残念ながら、「formatPrice median」が指定されたものは見つからないようです。

4

4 に答える 4