我想用Python使用BeautifulSoup解析HTML,但是我無法設法得到我需要的東西。在Python中使用BeautifulSoup解析HTML
這是我想要做的個人應用程序的一個小模塊,它包含一個帶有憑據的Web登錄部分,一旦腳本登錄到Web中,我需要解析一些信息以便管理它並處理它。
越來越登錄後的HTML代碼是:
<div class="widget_title clearfix">
<h2>Account Balance</h2>
</div>
<div class="widget_body">
<div class="widget_content">
<table class="simple">
<tr>
<td><a href="#" id="west1" title="Total earned daily">Daily Earnings</a></td>
<td style="text-align: right; width: 125px; color: #119911; font-weight: bold;">
150
</td>
</tr>
<tr>
<td><a href="#" id="west2" title="Total weekly earnings">Weekly Earnings</a></td>
<td style="text-align: right; border-bottom: 1px solid #000; color: #119911; font-weight: bold;">
500 </td>
</tr>
<tr>
<td><a href="#" id="west3" title="Total Monthly earnings">Monthly Earnings</a></td>
<td style="text-align: right; color: #119911; font-weight: bold;">
1500 </td>
</tr>
<tr>
<td><a href="#" id="west4" title="Total expenses">Total expended</a></td>
<td style="text-align: right; border-bottom: 1px solid #000; color: #880000; font-weight: bold;">
430 </td>
</tr>
<tr>
<td><a href="#" id="west5" title="Total available">Account Balance</a></td>
<td style="text-align: right; border-bottom: 3px double #000; color: #119911; font-weight: bold;">
840 </td>
</tr>
<tr>
<td></td>
<td style="padding: 5px;">
<center>
<form id="request_bill" method="POST" action="index.php?page=dashboard">
<input type="hidden" name="secret_token" value="" />
<input type="hidden" name="request_payout" value="1" />
<input type="submit" class="btn blue large" value="Request Payout" />
</form>
</center>
</td>
</tr>
</table>
</div>
</div>
</div>
正如你所看到的,這不是一個很好的格式化的HTML,但我需要提取的元素和它們的值,我的意思是,對於例如:「每日收入」和「150」| 「每週收入」和「500」...
我認爲「id」屬性可能會有所幫助,但是當我嘗試解析它時,它會崩潰。
的Python代碼我工作是:
def parseo(archivohtml):
html = archivohtml
parsed_html = BeautifulSoup(html)
par = parsed_html.find('td', attrs={'id':'west1'}).string
print par
凡archivohtml是在網絡
登錄當我運行該腳本後保存的HTML文件,我只得到錯誤。
我也試着這樣做:
def parseo(archivohtml):
soup = BeautifulSoup()
html = archivohtml
parsed_html = soup(html)
par = soup.parsed_html.find('td', attrs={'id':'west1'}).string
print par
但結果還是一樣。
哪些錯誤???? – 2013-03-22 17:44:40
「它崩潰」是什麼意思?它是否用回溯打印出異常然後退出?如果是這樣,請向我們展示異常和追溯(當然還有追溯所涉及的代碼)。 – abarnert 2013-03-22 18:01:09
文件「C:\ py \ projectparse \ logparse.py」,第53行,在parseo par = parsed_html.find('td',attrs = {'id':'west1'})字符串 AttributeError:'NoneType 'object has no attribute'string' – dexafree 2013-03-22 18:51:05