【发布时间】:2023-02-08 05:30:53
【问题描述】:
我想在网站上获取一些数据,但我的代码并没有真正起作用。我是 python 的新手,我只是想让一些代码工作。非常欢迎任何想法或帮助完成这项工作。提前致谢。
import requests
from bs4 import BeautifulSoup
headers = {"User-Agent": "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:92.0) Gecko/20100101 Firefox/92.0",}
url = "https://mine.com/blockexplorer/account/GDOI7OSBDM3WPXWFT3RUPGGLV3Y5MKZJKNN4CZMQITUWWQRUF5IXCLZJ"
r = requests.get(url, headers=headers)
soup = BeautifulSoup(r.content, "lxml")
t = soup.find("table", class_="table")
trs = t.find("tbody").find_all("tr")
for tr in trs:
print(list(tr.stripped_strings))
当前结果:
Traceback (most recent call last):
File "C:/Users/es***a/Desktop/Pi Scripts/pi-temp1.py", line 14, in <module>
trs = t.find("tbody").find_all("tr")
AttributeError: 'NoneType' object has no attribute 'find'
需要结果:
Public Key: GDOI7OSBDM3WPXWFT3RUPGGLV3Y5MKZJKNN4CZMQITUWWQRUF5IXCLZJ
Balance: 26.9231952
【问题讨论】:
-
正如经常发生的那样,您实际上并没有查看该站点提供的 HTML。如果您在浏览器中执行“查看源代码”,您会看到该页面上没有表格。几乎没有 HTML。该页面全部使用 Javascript 动态构建。您将需要使用浏览器进行捕获,使用诸如 Selenium 之类的东西。
标签: python web-scraping beautifulsoup python-requests