Scrapy——將數據保存到MySQL數據庫
2024-09-02 00:35:18
Scrapy——將數據保存到MySQL數據庫
1. 在MySQL中創建數據庫表job_inf:
1 Create table job_inf(
2 id int(11) not null auto_increment primary key,
3 title varchar(255),
4 salary varchar(255),
5 company varchar(255),
6 url varchar(500),
7 work_addr varchar(255),
8 industry varchar(255),
9 company_size varchar(255),
10 recruiter varchar(255),
11 publish_date varchar(255)
12
13 )
2. 在scrapy項目中將Pipeline文件修改如下:
1 import mysql.connector
2
3
4 class ZhipinspiderPipeline(object):
5 #定義構造器,初始化要寫入的文件
6 def __init__(self):
7 self.conn=mysql.connector.connect(user='root',password='12345',
8 host='localhost',port='1006',database='mypython',use_unicode=True)
9 self.cur=self.conn.cursor()
10
11 #重寫close_spider回調方法,用於關閉數據庫資源
12 def close_spider(self,spider):
13 print('------close database connection------------')
14 #關閉游標
15 self.cur.close()
16 #關閉連接
17 self.conn.close()
18
19 def process_item(self,item,spider):
20 #使用execute方法將item對象中的信息插入數據庫中
21 self.cur.execute('INSERT INTO job_inf Values(null,%s,%s,%s,%s,%s,%s,%s,%s,%s,)',(item['title'],item['salary'],item['company'],item['url'],item['work_addr'],item['indeustry'],item.get('company_size'],item['recruiter'],item['publish_date'])))
22 self.conn.commit()
最新文章
- 【.NET深呼吸】如何反序列化动态JSON
- ASCII 计算机码
- strace追踪mysql执行语句
- 编写Shader时的一些性能考虑
- 福利->;KVC+Runtime获取类/对象的属性/成员变量/方法/协议并实现字典转模型
- 【leetcode】Word Break II
- 点餐APP 冲刺一总结
- SqlServer之游标深入
- C++序列化库的实现
- 谷歌地图实现车辆轨迹移动播放(google map api)
- MyIsam与InnoDB主要区别
- Sequence operation(线段树区间多种操作)
- a标签包含块级元素问题
- 编写高质量代码改善C#程序的157个建议:第17个建议之多数情况下使用foreach进行循环遍历
- 让两个数x,y一直保持互质的模版
- node express将请求重定向为https
- sublime text 3搭建python
- MongoDB基础入门
- 十天精通CSS3(11)
- IdentityServer3零星笔记