爬取安居客的信息,并保存到csv文件中。

本文介绍如何避免使用XPath爬取安居客网站数据,以防止被封,同时指导将爬取的数据存储为CSV文件。
摘要由CSDN通过智能技术生成

这里说明下不要用xpath进行爬取,因为会被封。

# 引入包
import requests
from bs4 import BeautifulSoup
import time
import csv

# 定制请求头	换成自己的请求头
headers = {
    'User-Agent': 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:61.0) Gecko/20100101 Firefox/61.0',
}
# 输出查询信息
chaxun = input('请输入要查询的城市:')

# 将要访问的网址
link = 'https://'+chaxun+'.anjuke.com/sale/'

# 访问该网站
r = requests.get(link, headers=headers, timeout=100)

# 使用BeautifulSoup提取html中的内容
soup = BeautifulSoup(r.text, 'lxml')
house_list = soup.find_all('li', class_="list-item")

# 将爬取的内容写入 test.csv中,编码格式为 'UTF-8'
with open('test.csv', 'a', encoding='UTF-8', newline='') as csvfile:
    w = csv.writer(csvfile)

    for house in house_list:
        temp = []

        name = house.find('div', class_="house-title").a.text.strip()
好的,我可以帮你解决这个问题。首先,你需要确定要爬取的网站的URL格式和翻页规则。然后,你可以使用Python的requests库发送HTTP请求获取HTML页面,并使用BeautifulSoup库解析页面并提取所需的信息。最后,你可以使用Python的csv库将提取的信息保存CSV文件。 以下是示例代码: ```python import requests from bs4 import BeautifulSoup import csv # 设置请求头,防止被网站屏蔽 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'} # 设置要爬取的URL格式和翻页规则 url_format = 'http://www.xxx.com/page/{}' page_num = 1 # 创建CSV文件并写入表头 with open('kyspider.csv', 'w', newline='', encoding='utf-8') as csvfile: writer = csv.writer(csvfile) writer.writerow(['title', 'link', 'date']) # 循环爬取每一页的信息 while True: url = url_format.format(page_num) response = requests.get(url, headers=headers) # 判断是否到达最后一页,如果是则退出循环 if response.status_code == 404: break # 解析HTML页面,并提取所需的信息 soup = BeautifulSoup(response.text, 'html.parser') items = soup.find_all('div', {'class': 'item'}) for item in items: title = item.find('h2').find('a').text link = item.find('h2').find('a')['href'] date = item.find('span', {'class': 'date'}).text # 将提取的信息写入CSV文件 writer.writerow([title, link, date]) # 翻页 page_num += 1 print('爬取完成!') ``` 在上面的代码,我们首先设置了请求头,防止被网站屏蔽。然后,我们设置了要爬取的URL格式和翻页规则,并创建了CSV文件并写入表头。接下来,我们循环爬取每一页的信息,直到到达最后一页为止。在每一页,我们使用BeautifulSoup库解析HTML页面,并使用find()方法提取所需的信息。最后,我们将提取的信息使用csv库写入CSV文件。 完成后,你可以运行程序并等待爬取完成。爬取完成后,你可以在当前目录下找到一个名为kyspider.csv文件,其包含了所有爬取到的考研信息
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值