2017-06-02 7 views
0

私は、Googleファイナンスに掲載されている会社の名前、URL、および説明を掻きたいです。これまで私は説明とURLを取得するのに成功していますが、名前を取得することはできません。 myUrlのソースコードでは、名前は024 Pharma Inc.です。divを見ると、クラス名は「appbar-snippet-primary」となります。しかし、コードではそれを見つけることはできません。私はウェブスクレイピングに新しいので、私は何かが不足しているかもしれません。この点について私を案内してください。Googleファイナンスの名前を掻き取ることができません

from bs4 import BeautifulSoup 
import urllib 
import csv 

myUrl = 'https://www.google.com/finance?q=OTCMKTS%3AEEIG' 

r = urllib.urlopen(myUrl).read() 
soup = BeautifulSoup(r, 'html.parser') 

name_box = soup.find('div', class_='appbar-snippet-primary') # !! This div is not found 
#name = name_box.text 
#print name 

description = soup.find('div', class_='companySummary') 
desc = description.text.strip() 
#print desc 

website = soup.find('div', class_='item') 
site = website.text 
#print site 
+0

https://stackoverflow.com/questions/5913280/beautifulsoup-and-ajax-table-problemまた、HTTPS ://pypi.python.org/pypi/googlefinance –

+0

このdivがjavascriptで動的に生成されるため、div 'appbar-snippet-primary'は見つかりません。この種のウェブをスクラップするには 'selenium'または' splash'が必要です。 –

答えて

0
from bs4 import BeautifulSoup 
import requests 

myUrl = 'https://www.google.com/finance?q=OTCMKTS%3AEEIG' 

r = requests.get(myUrl).content 
soup = BeautifulSoup(r, 'html.parser') 

name = soup.find('title').text.split(':')[0] # !! This div is not found 
#print name 

description = soup.find('div', class_='companySummary') 
desc = description.text.strip() 
#print desc 

website = soup.find('div', class_='item') 
site = website.text 
-1

代わりsoup.findの書き込みsoup.find_all()()

関連する問題