【发布时间】:2019-01-17 14:38:58
【问题描述】:
这里对 Python 非常陌生。我正在尝试从此页面this page 捕获一些数据。我正在尝试获取两个列表中捕获的项目名称和项目类型。稍后我可以弄清楚如何将它们加入一张桌子。任何帮助都会很棒!
代码行自己工作,但循环对我不起作用。 这样就成功生成了两行代码:
import urllib
import bs4 as bs
sauce = urllib.request.urlopen('https://us.diablo3.com/en/item/helm/').read()
soup = bs.BeautifulSoup(sauce, 'lxml')
item_details = soup.find('tbody')
print(item_details)
item_name = item_details.find('div', class_='item-details').h3.a.text
print(item_name)
item_type = item_details.find('ul', class_='item-type').span.text
print(item_type)
这会一遍又一遍地重复第一个 item_name 的值:
for div in soup.find_all('div', class_='item-details'):
item_name = item_details.find('div', class_='item-details').h3.a.text
print(item_name)
item_type = item_details.find('ul', class_='item-type').span.text
print(item_type)
这是输出:
Veil of Steel
Magic Helm
Veil of Steel
Magic Helm
Veil of Steel
Magic Helm
Veil of Steel
Magic Helm
Veil of Steel
Magic Helm
Veil of Steel
Magic Helm
Veil of Steel
Magic Helm
...
【问题讨论】:
标签: python web-scraping beautifulsoup