【问题标题】:Webscraping with Python: requests.get(param) does not update although param updates使用 Python 进行网页抓取:requests.get(param) 不更新,尽管参数更新
【发布时间】:2025-12-13 05:45:01
【问题描述】:

我有以下问题:我尝试抓取名称普查网站 (https://namecensus.com/male_names.htm) 使用以下代码:

for counter in range(0, len(links_male)):
 print("Sleeping for 2 Seconds")
 time.sleep(2)
 print(url)
 html_page=rq.get(url) 

 bs_instance_male=BeautifulSoup(html_page.text,"html.parser")
 print(bs_instance.h1)
 table_entries=bs_instance.select(".datatable > table >tr >td")

 for entry in table_entries: 
    male_firstname_data.append(entry)

 #Update Url 
 counter+=1
 if(counter<len(links_male)):
    url=links_male[counter]
    print(f"URL updating to: {url}")
 else:
    print("Done")

这给出以下输出:picture of output

正如您所见,尽管 URL-String 已正确更新,但它不会以某种方式更新变量 html_page? 有人可以解释一下为什么会这样吗? 谢谢!!

【问题讨论】:

  • 您应该在代码围栏中添加输出(``` ```),而不是在屏幕截图中。

标签: python get python-requests screen-scraping


【解决方案1】:

您正在分配bs_instance_male,但打印bs_instance.h1,我认为有问题。此外,您提供的示例不是mcve。为了提高有用答案的机会,请确保读者可以复制您的代码并获得与您遇到的相同的问题。在大多数情况下,制作这样一个例子的过程会在发布问题之前就让问题变得明显。

【讨论】:

  • 非常感谢,我是新手!