【发布时间】:2019-09-10 08:10:14
【问题描述】:
我尝试在 python 的字典中获取两个div 的内容。主要问题是我能够获取第一个 div 内容和第二个内容,但不能以正确的键:值方式。我只能拿回钥匙。因此,我知道我需要遍历内容,但我看不到我的for loop 正确。
这是我迄今为止尝试过的:
from bs4 import BeautifulSoup
import requests
url='https://www.samenvoordeklant.nl/arbeidsmarktregios'
base=requests.get(url, timeout=15)
html=BeautifulSoup(base.text, 'lxml')
regios=html.find_all('div',attrs={'class':['field field--name-node-title field--type-ds field--label-hidden field__item animated','field field--name-field-gemeenten field--type-string-long field--label-hidden field__item animated']})
for regio in regios:
print({regio.get_text(strip=True)})
结果:
{'Achterhoek'}
{'Aalten, Berkelland, Bronckhorst, Doetinchem, Montferland, Oost Gelre, Oude IJsselstreek, Winterswijk'}
{'Amersfoort'}
{'Amersfoort, Baarn, Bunschoten, Leusden, Nijkerk, Soest, Woudenberg'}
等等
我追求的结果是:
{'Achterhoek':'Aalten', 'Berkelland', 'Bronckhorst', 'Doetinchem', 'Montferland', 'Oost Gelre', 'Oude IJsselstreek', 'Winterswijk'}
{'Amersfoort':'Amersfoort', 'Baarn', 'Bunschoten', 'Leusden', 'Nijkerk', 'Soest', 'Woudenberg'}
等等。这让我之后可以更轻松地将其移动到pandas dataframe。
【问题讨论】:
标签: python python-3.x web-scraping beautifulsoup