Python中使用Scrapy爬虫抓取上海链家房价信息

本文记录了一次使用Python的Scrapy框架抓取上海链家网站房价信息的过程,包括创建Scrapy项目、定义爬虫Spider、数据导出及如何将数据存储到MongoDB数据库的准备工作。
摘要由CSDN通过智能技术生成

前言

之前用python写了一个简单的爬虫项目用来抓取上海链家上的一些房价信息,整理了下代码,特此记录

准备工作
  • 安装Scrapy
创建一个新的Scrapy项目

例如,我们可以使用指令 scrapy startproject Lianjia 创建一个名为Lianjia的scrapy项目

$ scrapy startproject Lianjia
New Scrapy project 'Lianjia', using template directory '/usr/local/anaconda3/lib/python3.6/site-packages/scrapy/templates/project', created in:
    /Users/lestat/PyProjects/Lianjia

You can start your first spider with:
    cd Lianjia
    scrapy genspider example example.com

运行完该指令后,scrapy会为该项目创建Lianjia文件及相关文件,Lianjia文件夹下的目录结构如下:

.
├── Lianjia					# Python模块,所有的代码都放这里面
│   ├── __init__.py
│   ├── __pycache__
│   ├── items.py			# Item定义文件
│   ├── middlewares.py
│   ├── pipelines.py		# pipelines定义文件
│   ├── settings.py			# 配置文件
│   └── spiders				# 所有爬虫spider都放这个文件夹下面
│       ├── __init__.py
│       └── __pycache__
└── scrapy.cfg 				# 部署配置文件

4 directories, 7 files

定义一个爬虫Spider

以下是一个可以抓取需要的链家搜索结果页面信息的spider

# Lianjia/Lianjia/spiders/summ_info.py
# -*- coding: utf-8 -*-
import scrapy
import time, sys


#scrapy runspider spiders/summ_info.py -a query=ershoufang/ie2y4l2l3a3a4p5 -o ./data/result4.csv
class LianjiaSpider(scrapy.Spider):
    name = "fetchSummInfo"
    allowed_domains = ['sh.lianjia.com']

    headers = {
    'user-agent'
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值