Python爬虫:爬取小说并存储到数据库

该博客详细记录了使用Python爬虫抓取小说网站的内容,并将其存储到数据库的过程。首先介绍了如何获取小说信息,然后阐述了数据库设计,包括创建novel和chapter两个表,并设置了外键关联。在存储过程中遇到'novelid'字段缺失默认值的问题,通过执行特定SQL语句解决了报错。最后,验证了数据成功存储到数据库。
摘要由CSDN通过智能技术生成

爬取小说网站的小说,并保存到数据库


第一步:先获取小说内容

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#!/usr/bin/python
# -*- coding: UTF-8 -*-
 
import  urllib2,re
 
domain  =  'http://www.quanshu.net'
headers  =  {
     "User-Agent" "Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36"
}
 
def  getTypeList(pn = 1 ):  #获取分类列表的函数
     req  =  urllib2.Request( 'http://www.quanshu.net/map/%s.html'  %  pn)  #实例将要请求的对象
     req.headers  =  headers   #替换所有头信息
     #req.add_header() #添加单个头信息
     res  =  urllib2.urlopen(req)    #开始请求
     html  =  res.read().decode( 'gbk' )   #decode解码,解码成Unicode
     reg  =  r '<a href="(/book/.*?)" target="_blank">(.*?)</a>'
     reg  =  re. compile (reg)  #增加匹配效率  正则匹配返回的类型为List
 
     return  re.findall(reg,html)
 
def  getNovelList(url):   #获取章节列表函数
     req  =  urllib2.Request(domain 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值