【发布时间】:2017-08-21 21:35:55
【问题描述】:
我目前正在通过预设一个名为 number_of_pages 的变量来抓取特定网站的所有页面。在添加我不知道的新页面之前,预设此变量有效。例如下面的代码是 3 页,但网站现在有 4 页。
base_url = 'https://securityadvisories.paloaltonetworks.com/Home/Index/?page='
number_of_pages = 3
for i in range(1, number_of_pages, 1):
url_to_scrape = (base_url + str(i))
我想使用 BeautifulSoup 来查找网站上所有下一个要抓取的链接。下面的代码找到第二个 URL,但不是第三个或第四个。如何在抓取之前构建所有页面的列表?
base_url = 'https://securityadvisories.paloaltonetworks.com/Home/Index/?page='
CrawlRequest = requests.get(base_url)
raw_html = CrawlRequest.text
linkSoupParser = BeautifulSoup(raw_html, 'html.parser')
page = linkSoupParser.find('div', {'class': 'pagination'})
for list_of_links in page.find('a', href=True, text='next'):
nextURL = 'https://securityadvisories.paloaltonetworks.com' + list_of_links.parent['href']
print (nextURL)
【问题讨论】:
标签: python python-3.x web-scraping beautifulsoup