gpt4 book ai didi

python - 循环浏览网页

转载 作者:太空宇宙 更新时间:2023-11-03 20:20:33 24 4
gpt4 key购买 nike

我正在运行一个脚本,通过从网站上抓取产品价格来更新产品价格。该脚本应抓取给定页面的所有名称和价格,然后转到下一页。但是,由于某种原因,它并没有转到下一页,而是继续循环浏览同一页面。我尝试了代码的许多变体,但它仍然不断发生。

这是我的代码:

page_B = 1
url_B = 'https://website/section/food-drink?page=1/' # Initial url

while page_B < 15:
req = Request(url_B, headers={'User-Agent': 'Chrome'})
web_page = urlopen(req).read()
soup = BeautifulSoup(web_page, "html.parser")

for product in soup.find_all('div', class_="product-wrapper"):
# Get product name
product_title = product.find('p', class_='h4 product__title').text
# Get product price
product_price = product.find('p', class_='product__price')
raw_data = list(product_price.children)[-1]
# Remove spaces, newlines and quotes from prices
clean_price = raw_data.strip(' \n"')

print(product_title)
print(clean_price)

csv_writer.writerow([product_title, product_price])

url_base = url_B.split(str(page_B))
page_B += 1
new_url = url_base[0] + str(page_B) + '/'
url_B = new_url

csv_file.close()

代码的最后一部分是我指示脚本更新下一页的 url 的地方。当我运行这个程序时,它会在同一页上打印 15 次产品名称和价格。我怀疑这个问题与局部变量和全局变量有关,但我对编程很陌生,所以仍然有点困惑。如有任何帮助,我们将不胜感激。

最佳答案

使用 python format() 函数。

page_B = 1
url_B = 'https://website/section/food-drink?page={}/' # Initial url

while page_B < 15:
req = Request(url_B.format(page_B), headers={'User-Agent': 'Chrome'})
web_page = urlopen(req).read()
soup = BeautifulSoup(web_page, "html.parser")
page_B=page_B+1

关于python - 循环浏览网页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58188342/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com