利用pymysql爬虫后导入数据库

别总存本地了,爬书内容太大了,存进数据库吧。数据库:MySQL5.5.29;可视化工具:navicat fo mysql。/20171230

navicat中的“截断表”就是"truncate",而“清空表"delete"。/20180102

两者区别总结:

truncate是整体删除(速度较快), delete是逐条删除(速度较慢)。 truncate不写服务器log,delete写服务器log,也就是truncate效率比delete高的原因。 truncate不激活trigger(触发器),但是会重置Identity(标识列、自增字段),相当于自增列会被置为初始值,又重新从1开始记录,而不是接着原来的ID数。而delete删除以后,Identity依旧是接着被删除的最近的那一条记录ID加1后进行记录。 如果只需删除表中的部分记录,只能使用DELETE语句配合where条件。 DELETE FROM wp_comments WHERE……

__author__ = '姜枫渔火'
import requests
import re
import pymysql

conn = pymysql.connect(
    host = 'localhost',
    port = 3306,
    user = 'root',
    passwd = '1a2b3c4d',
    db = 'test',
    charset = 'utf8'    # 不是'utf-8'
)

cursor = conn.cursor()

def GetSortNovelList():
    response = requests.get('http://www.quanshuwang.com/list/1_1.html')
    response.encoding = 'gbk'    # Headers没有返回编码,查看源代码网页为'gbk'格式
    result = response.text
    # print(result)
    pattern = re.compile(r'(.+?)')
    chapter_content = re.findall(pattern, result)
    return chapter_content

def GetChapterContent(url):
    response = requests.get(url)
    response.encoding = 'gbk'
    result = response.text
    pattern = re.compile(r'style5\(\);(.+?)
                    
                    

你可能感兴趣的:(爬虫们)