【发布时间】:2017-06-13 19:31:10
【问题描述】:
如何从具有下表数据的 html 页面中提取日期“2017 年 6 月 3 日”。日期将根据订单号更改。我不确定我是否正确使用它。请指教。
<tr>
<td style="font:bold 24px Arial;">Order #12345</td>
<td style="font:13px Arial;"><strong>Order Date:</strong> June 03, 2017</td>
</tr>
下面是我写的示例代码
import requests
from bs4 import BeautifulSoup
#'url' is the actual link of html page
data = requests.get('url').content
soup = BeautifulSoup(data, "html.parser")
on = soup.find_all(text=re.compile("Order #"))
print (on)
od = soup.find_all(text=re.compile("Order Date")).next_element()
print (od)
执行上述代码后出现以下错误。
Error :
['Order #12345']
Traceback (most recent call last):
File "test.py", line 24, in <module>
od = soup.find_all(text=re.compile("Order Date")).next_element()
AttributeError: 'ResultSet' object has no attribute 'next_element'
【问题讨论】:
-
您正在尝试调用结果对象列表中的下一个元素,您是否尝试过遍历列表并在每个项目上调用下一个元素?
标签: python beautifulsoup screen-scraping