【发布时间】:2021-08-23 15:37:37
【问题描述】:
我是 python 的初学者,对 HTML 没有任何经验。我刚刚看到一个关于网络抓取的 youtube 视频 (https://www.youtube.com/watch?v=kEItYHtqQUg&ab_channel=edureka%21),并对从 python 中的 URL 提取文本感兴趣。
我尝试从随机数据库中练习它的链接。这是我使用的 URL 和代码 https://rtk.rjifuture.org/rmp/facility/100000028301
from bs4 import BeautifulSoup
from urllib.request import urlopen
url = "https://rtk.rjifuture.org/rmp/facility/100000028301"
html = urlopen(url)
soup = BeautifulSoup(html, "html.parser")
type(soup)
all_links = soup.findAll('div', {'class': 'col'})
str_cells = str(all_links)
cleartext = BeautifulSoup(str_cells, "html.parser").get_text().split(',')
假设我想提取位置下的地址。通过使用上面的代码,我可以通过print(cleartext[7])得到地址
但是当我尝试使用同一数据库中的另一个链接(如https://rtk.rjifuture.org/rmp/facility/100000083214)进行相同操作时, 它的效果不如网页的第一部分(设施名称下方的部分)的结构略有不同。当地址之前的一个数据中有 , 时,这也不能很好地工作。
有没有办法定位位置部分下的地址并从中提取文本?
【问题讨论】:
标签: python html url beautifulsoup scrape