用漂亮的汤捕获网址

时间:2018-12-06 14:15:18

标签: python beautifulsoup

从此URL Amazon india site for all books开始,我想翻页此页面底部给出的页码网址

我用过漂亮的汤并且能够捕获列表中的信息。但是我不明白如何使用捕获的href信息创建完整的URL来打开网页。 (基本上是如何重写网址)

这是代码。

import requests
from nltk.corpus import wordnet
from bs4 import BeautifulSoup
url = https://www.amazon.in/s/ref=nb_sb_noss_2?url=search-alias%3Daps&field-keywords=book

webpage = requests.get(url)
my_soup = BeautifulSoup(webpage.text, "lxml")
urls_at_bottom = my_soup.find_all(class_='pagnLink')
empty_list = list()
for b_url in urls_at_bottom:
    empty_list.append(b_url.find('a')['href'])
print(empty_list)

以下是输出:

['/book/s?ie=UTF8&page=2&rh=i%3Aaps%2Ck%3Abook', '/book/s?ie=UTF8&page=3&rh=i%3Aaps%2Ck%3Abook']

如何使用这些捕获的链接打开第2页和第3页的页面?

1 个答案:

答案 0 :(得分:1)

将该根目录/域添加到empty_list中的每个元素中。您可以立即执行然后循环

links = [ 'https://www.amazon.in' + x for x in emptylist ] 

for link in links:
    next_webpage = requests.get(link)

,或者在您遍历填充的empty_list时串联:

for link in empty_list:
    next_webpage = requests.get('https://www.amazon.in' + link)