在pipeline中编辑MysqlPipeline
class MysqlPipeline(object):
def __init__(self):
self.connect = pymysql.connect(host=settings.MYSQL_HOST, port=settings.MYSQL_PORT, db=settings.MYSQL_DB,
user=settings.MYSQL_USER, password=settings.MYSQL_PASSWORD)
self.cursor = self.connect.cursor()
def process_item(self, item, spider):
print(item['job_name'], item['campany_name'], item['campany_size'], item['salary'], item['work_place'],
item['update_time'],
item['hire_num'], item['edu_background'], item['experience_requirement'], item['campany_nature'],
item['job_requirement'], item['campany_intro'], item['linkman'], item['phone'],
item['email'], item['location'])
sql = "insert into " + settings.MYSQL_TABLE + \
"(job_name,campany_name,campany_size,salary,work_place,update_time,hire_num,edu_background,experience_requirement,campany_nature,job_requirement,campany_intro,linkman,phone,email,location) " \
"values(%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s)"
try:
self.cursor.execute(sql, (
item['job_name'], item['campany_name'], item['campany_size'], item['salary'], item['work_place'],
item['update_time'],
item['hire_num'], item['edu_background'], item['experience_requirement'], item['campany_nature'],
item['job_requirement'], item['campany_intro'], item['linkman'], item['phone'],
item['email'], item['location']))
self.connect.commit()
except Exception as e:
print(e)
return item
其中涉及python对mysql的操作,不了解的同学可以参考https://www.cnblogs.com/hanfanfan/p/10398244.html