您好,我正在尝试编写一个脚本,该脚本将从URL列表(在本例中为工作列表)中提取指定信息,然后使用每个工作列表页面上的指定信息(来自html)将其写入文件。关于写入一个我现在不太关心的文件的部分,我更关注的是能够从指定的链接中提取所需的信息。我编写此代码是为了创建感兴趣的URL列表:
import requests
from bs4 import BeautifulSoup
# Get links for all open listings
mainpage = requests.get('https://www.digitalmarketplace.service.gov.uk/digital-outcomes-and-specialists/opportunities?q=&statusOpenClosed=open%27%27%27')
soup = BeautifulSoup(mainpage.text, 'html.parser')
link_list = []
for opps in soup.findAll('li', class_='app-search-result'):
links = opps.h2.a.get('href')
open_links = ('https://www.digitalmarketplace.service.gov.uk/%27+links')
link_list.append(open_links)
# print(link_list[25])
这很好,因为我可以通过索引选择所需的链接。在下一部分中,我将尝试编写一个For循环,该循环将遍历link_列表中的每个链接,然后获取相应链接的指定信息
# Write for loop hat grabs specified information
for idx, item in enumerate(link_list[0:]):
open_opps = requests.get(open_links)
open_soup = BeautifulSoup(open_opps.text, 'html.parser')
closing_date = open_soup.findAll(class_="govuk-summary-listvalue")[2].text
summary = open_soup.findAll(class_="govuk-summary-listvalue")[3].text
print(closing_date[25])
在上面的代码中,我试图提取第24份工作清单的截止日期,但收到一个错误:
closing_date = open_soup.findAll(class_="govuk-summary-listvalue")[2].text
IndexError: list index out of range
我想知道我如何写这篇文章,这样我就可以提取指定的信息,如第二份工作清单的截止日期。任何帮助都将不胜感激,谢谢
在分析截止日期时,您使用了错误的xpath类
使用
govuk-summary-list__value
作为类值而不是govuk-summary-listvalue
相关问题 更多 >
编程相关推荐