爬取链接:我爱我家
如果需要参考创建步骤,可以参考这篇文章
爬虫文件:loupan.py

import scrapy
from baiduSpider.items import BaiduspiderItemclass LoupanSpider(scrapy.Spider):name = 'loupan'allowed_domains = ['5i5j.com']# start_urls = ['https://fang.5i5j.com/bj/loupan/n1/']  #爬取链接start_urls=['https://fang.5i5j.com/bj/loupan/n%s/' % x for x in range(1,3)]   #多页爬取def parse(self, response):item=BaiduspiderItem()for row in response.xpath('/html/body/div[4]/div[1]/ul[1]/li'):item['house_rank']=row.xpath('div[2]/div[1]/a/span[1]/text()').get()   #楼盘排名item['house_name']=row.xpath('div[2]/div[1]/a/span[2]/text()').get()   #楼盘名item['addr']=row.xpath('div[2]/div[3]/a/span[5]/text()').get().strip()   #地址item['size']=row.xpath('div[2]/div[2]/a/span[4]/text()').get()   #大小item['price']=row.xpath('div[3]/p/text()').get()  #均价yield item

items.py

import scrapy
class BaiduspiderItem(scrapy.Item):house_rank=scrapy.Field()house_name=scrapy.Field()addr=scrapy.Field()size=scrapy.Field()price=scrapy.Field()

数据库里创建相应的表格和字段

USE test;
CREATE table loupan(
Id Int AUTO_INCREMENT PRIMARY key, #自增长主键
house_name varchar(255) CHARACTER set utf8,#楼盘名
addr varchar(255) CHARACTER set utf8, #楼盘地址
size varchar(255) CHARACTER set utf8, #大小
price varchar(255) CHARACTER set utf8 #价格
)


settings.py

MYSQL_DB_HOST = "127.0.0.1"
MYSQL_DB_PORT = 3306  # 端口
MYSQL_DB_NAME = "test"
MYSQL_DB_USER = "root"
MYSQL_DB_PASSWORD = "123456"
ITEM_PIPELINES = {'baiduSpider.pipelines.MySQLPipeline': 2
}

pipelines.py

import pymysqlclass BaiduspiderPipeline:def process_item(self, item, spider):return itemclass MySQLPipeline():# 开始爬取数据之前被调用# 读取配置文件,初始化连接以及游标def open_spider(self, spider):host = spider.settings.get("MYSQL_DB_HOST", "127.0.0.1")port = spider.settings.get("MYSQL_DB_PORT", 3306)dbname = spider.settings.get("MYSQL_DB_NAME", "test")user = spider.settings.get("MYSQL_DB_USER", "root")pwd = spider.settings.get("MYSQL_DB_PASSWORD", "123456")self.db_conn = pymysql.connect(host=host, port=port,db=dbname, user=user, password=pwd)self.db_cur = self.db_conn.cursor()# 每解析完一个 item 调用# 插入数据def process_item(self, item, spider):values = (item['house_name'],item['addr'],item['size'],item['price'])sql = "insert into loupan(house_name,addr,size,price) values(%s,%s,%s,%s)"self.db_cur.execute(sql, values)   #执行sql语句return item# 爬取完全部数据后被调用# 提交数据,释放连接def close_spider(self, spider):self.db_conn.commit()self.db_cur.close()self.db_conn.close()

最后执行scrapy crawl loupan -o loupan.csv,数据库中存有了数据

如何将爬取的数据存入数据库中相关推荐

  1. python爬取微博数据存入数据库_Python爬取微博数据并存入mysql,excel中

    寒假期间做微博数据统计,由于是部门要求,也没办法,自己又是一个懒人,直接用python实现吧.写的很粗糙,也很差,请大家别介意. 总的来说分成两个模块:一个爬取微博数据存入数据库,一个从数据库调取数据 ...

  2. python爬取微博数据存入数据库_Python爬取新浪微博评论数据,写入csv文件中

    因为新浪微博网页版爬虫比较困难,故采取用手机网页端爬取的方式 操作步骤如下: 1. 网页版登陆新浪微博 2.打开m.weibo.cn 3.查找自己感兴趣的话题,获取对应的数据接口链接 4.获取cook ...

  3. python抓取数据库_Python-7.爬取大量数据存入数据库

    本章包含内容: 前言 mongodb环境配置 爬取数据的代码分析 一.前言 在更新完上一篇python文章时,就一直想爬取一个10万量级的数据.在解了mongodb的基本用法和环境配置后,第一次测试的 ...

  4. python爬取微博数据存入数据库_python爬取微博并且存入数据库

    由于平时喜欢刷微博,追星,所以写了想要写一个爬取微博的爬虫,在老师的建议下选择从移动端爬取,因为移动端页面元素简洁,易于爬取.在看微博时发现有比移动端更加简单的一个版本....老年机版?就是分页式的. ...

  5. 爬虫学习——爬取台风数据存入数据库

    最近因为某些需求需要台风数据的数据库,因此想利用python写一个相关的程序~ 因为台风的数据77年之前是没有风圈等数据,所以台风在77年前只有一张数据表,在77年之后多了一张关于风圈风力的表.但是我 ...

  6. 【爬虫+数据库操作】用pandas将爬取的股票信息存入数据库!

    以下内容为本人原创,欢迎大家观看学习,禁止用于商业用途谢谢合作! ·作者:@Yhen ·原文网站:CSDN ·原文链接:https://blog.csdn.net/Yhen1/article/deta ...

  7. Python网络爬虫使用BeautifulSoup爬取网页内容并存入数据库案例

    使用BeautifulSoup爬取网页内容并存入数据库案例 学习了Python网络爬虫,完成里一个比较完整的爬虫案例与大家分享 爬取地址:http://www.tipdm.com/cpzx/index ...

  8. Python爬取股票数据存入mysql数据库,获取股票(最新、最高、今开、成交量、成交额、量比、换手率、涨幅等)支持多线程+数据库连接池

    项目简介 (Python)爬虫 + MySQL + Redis项目. 爬取下来的数据可用于后续的数据分析(我计划将其用于我的毕业设计). 未来会将数据分析的可视化部署到服务器上, 并添加股票降价通知的 ...

  9. 实战爬虫-爬取红袖添香并存入数据库

    看了很多爬虫视频的视频,最近找了个小说网站练练手 ####目标:红袖添香前20页小说,包括小说名字,作者,类别,状态,字数,以及基本介绍 ####网址在这儿: https://www.hongxiu. ...

最新文章

  1. Jenkins Pipeline 构建复杂的Electron程序
  2. 2019蚂蚁金服 Java面试题目!涵盖现场3面真题
  3. python 导航栏_解析导航栏的url--selnium,beautifulsoup实战
  4. 一般java,【面试题】java一般
  5. ProxmoxVE(V5.2) 之 使用外部ceph存储(luminous)
  6. Kafka会不会丢消息
  7. cuda Memory Fence Functions
  8. java程序结构化设计_项目二:基于Java的结构化程序设计
  9. 跟燕十八学习PHP-第二十八天-union用法深入讲解
  10. mysql数据结构_MySQL索引深入理解底层数据结构
  11. 浅析Linux系统入侵排查与应急响应技术
  12. Internet浏览器,C:\fakepath路径问题
  13. 一款牛逼的Android端身份证合成工具
  14. RationalDMIS 2020 CAD模型坐标系转换(山涧果子)2021
  15. 计算机主机内部数据线,机箱内的各种线缆安装步骤(图文)
  16. Prisma初体验【逆向生成数据模型】
  17. Mac Safari 12.0 升级后无限闪退,提示不支持扩展
  18. Android高版本P/Q/R源码编译指南
  19. 古风尚婚纱摄影--决定
  20. 新买的显示器怎么测试软件,新买的电视如何检测屏幕?记住这个方法

热门文章

  1. ubuntu1804安装opencv
  2. WebSocket 实现断线重连 详细代码 项目源码
  3. Logistic模型拟合COVID-19疫情以及Python实现
  4. 虚拟机(Ubuntu18.04版本)中文字体乱码或混乱的一种解决方案
  5. 知乎搜索排序模型的演进
  6. 【Python入门基础】Web前端
  7. 《The Ph.D. Grind》读后感
  8. 推荐10个值得一听的国外技术播客
  9. Cookie 和 Session、实现用户登录逻辑
  10. OC-oc语言简介,类和对象