【发布时间】:2021-04-20 23:00:14
【问题描述】:
希望这里的问题相当简单。我正在尝试从维基百科页面中抓取数据,最终使用 Python (Page here) 将其放入数据框中。具体来说,我试图将社区列表(不是在表格中,而是在页面上标出)放入一个空的数据框中。我正在使用 BeautifulSoup 并且可以到达我已经拉出我想要的维基百科页面部分的位置,但不能只获取社区的名称(而不是名称和网络链接)。以下是我目前所拥有的:
import requests
import pandas as pd
from bs4 import BeautifulSoup
df = pd.DataFrame(columns = ['Neighborhood', 'Latitude', 'Longitude'])
arlington_hoods = requests.get(": https://en.wikipedia.org/wiki/List_of_neighborhoods_in_Arlington_County,_Virginia")
soup = BeautifulSoup(arlington_hoods.content, 'lxml')
content = soup.find(id='bodyContent').find_all('li)
print(content)
运行后,输出如下所示:
<li>Alcova Heights</li>
<li><a href="/wiki/Arlington_Forest_Historic_District" title="Arlington Forest Historic District">Arlington Forest</a></li>
<li><a href="/wiki/Arlington_Heights_Historic_District" title="Arlington Heights Historic District">Arlington Heights</a></li>
<li><a href="/wiki/Arlington_Ridge,_Virginia" title="Arlington Ridge, Virginia">Arlington Ridge</a></li>
<li>Arlington View / Johnson's Hill</li>
<li><a href="/wiki/Ashton_Heights_Historic_District" title="Ashton Heights Historic District">Ashton Heights</a></li>
<li><a href="/wiki/Aurora_Highlands_Historic_District" title="Aurora Highlands Historic District">Aurora Highlands</a></li>
<li>Aurora Hills</li>...etc etc.
我只对将 Neighborhood 名称(Alvoa Heights、Arlington Forest...)而不是将偶尔的网络链接拉入 df DataFrame 的“Neighborhood”列感兴趣。
我认为我需要编写一个“for循环”才能通过,但我不确定下一步。
提前致谢!
【问题讨论】:
标签: python dataframe web-scraping beautifulsoup wikipedia