在使用Python的requests
库进行爬虫时,处理数据分页抓取可以通过以下步骤实现:
import requests
url = "https://example.com/data"
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3"
}
response = requests.get(url, headers=headers)
BeautifulSoup
库来简化这个过程。from bs4 import BeautifulSoup
soup = BeautifulSoup(response.text, "html.parser")
data = soup.find_all("div", class_="item") # 根据实际情况修改选择器
next_page = soup.find("a", text="下一页") # 根据实际情况修改选择器
if next_page:
next_page_url = next_page["href"]
next_page_response = requests.get(next_page_url, headers=headers)
next_page_soup = BeautifulSoup(next_page_response.text, "html.parser")
more_data = next_page_soup.find_all("div", class_="item") # 根据实际情况修改选择器
data.extend(more_data)
with open("output.txt", "w", encoding="utf-8") as f:
for item in data:
f.write(item.get_text() + "\n") # 根据实际情况修改提取数据的代码
请注意,这个过程可能需要根据目标网站的具体结构进行调整。同时,确保遵守目标网站的robots.txt规则,并尊重其服务器负载。如果网站有反爬虫机制,可能需要进一步处理,如设置请求间隔或使用代理IP。