【发布时间】:2020-02-02 10:13:51
【问题描述】:
我正在尝试使用 BeautifulSoup 在 Python 中抓取许多页面,但没有积极的结果。
我尝试使用request.get() 和session.get()。我应该抓取的页数是 92。
import requests
from bs4 import BeautifulSoup
import urllib.request
with requests.Session as session:
count = 0
for i in range(92):
count+=1
page = "https://www.paginegialle.it/lazio/roma/dentisti/p-"+str(count)+".html"
r = session.get(page)
soup = BeautifulSoup(r.content)
使用print(page) 页面格式正确。但是执行soup来打印存储在变量中的所有值,只打印第一页的值。
我正在使用一个 jupyter 笔记本
【问题讨论】:
-
“执行
soup打印所有值”是什么意思?您用来打印这些值的代码是什么?目前,您的代码每次都会在循环中简单地覆盖soup变量中的内容。 -
我的意思是我只是写汤并执行它(Shift+Enter)。
-
你在哪里/什么时候这样做?毕竟,你有一个循环。
-
在新的单元格中,在执行当前代码后
-
那么您应该始终在
soup中拥有最后页的内容。我认为您的代码基本上是正确的,但是您应该对循环中的soupin 进行一些处理。
标签: python beautifulsoup