2017-08-15 112 views
0

我需要獲取以下屏幕截圖中顯示的文本2,585。我很新的編碼,但這是我到目前爲止:如何使用BeautifulSoup和Python獲取表格/跨度後的文本?

import urllib2 
from bs4 import BeautifulSoup 

url= 'insertURL' 
r = requests.get(url) 
data = r.text 
soup = BeautifulSoup(data, 'html.parser') 
span = soup.find('span', id='d21475972e793-wk-Fact -8D34B98C76EF518C788A2177E5B18DB0') 
print (span.text) 

任何信息是有幫助的!謝謝。

Website HTML

回答

0

3樣東西,你的使用要求不會的urllib2。您選擇帶名稱空間的XML,因此您需要使用xml作爲解析器。你想要的元素不是span它是ix:nonFraction。這是一個使用另一個網頁的工作示例(您只需將它指向您的頁面並使用註釋行)。

# Using requests no need for urllib2. 
import requests 
from bs4 import BeautifulSoup 

# Using this page as an example. 
url= 'https://www.sec.gov/Archives/edgar/data/27904/000002790417000004/0000027904-17-000004.txt' 
r = requests.get(url) 
data = r.text 
# use xml as the parser. 
soup = BeautifulSoup(data, 'xml') 
ix = soup.find('ix:nonFraction', id="Fact-7365D69E1478B0A952B8159A2E39B9D8-wk-Fact-7365D69E1478B0A952B8159A2E39B9D8") 
# Your original code for your page. 
# ix = soup.find('ix:nonFraction', id='d21475972e793-wk-Fact-8D34B98C76EF518C788A2177E5B18DB0') 
print (ix.text) 
相關問題