urllib2爬取小说三寸人间

# -*- coding: UTF-8 -*-

import urllib2
import re
import ssl
import sys

if __name__ == "__main__":

    #代理
    proxy = {
        'http': 'xxx',
        'https': 'xxx'
    }

    ssl_context = ssl._create_unverified_context()

    https_handler = urllib2.HTTPSHandler(context=ssl_context)

    url = "https://www.i7wx.com/book/0/636/"

    proxy_handler = urllib2.ProxyHandler(proxy)

    opener = urllib2.build_opener(proxy_handler, https_handler)

    response = opener.open(url)

    # print response.read().decode('gbk')

    pattern = re.compile(r'<a href="(\d*.html)">(.*?)</a>', re.I)

    result = pattern.findall(response.read().decode('gbk'))

    for k, v in result:
        # print k, v
        with open("./novel/" + v + ".txt", 'w') as f:
            r = opener.open(url + k)

            pattern = re.compile(r'<div id="content">(.*?)</div>')

            # print r.read().decode('gbk')
            match = pattern.findall(r.read().decode('gbk'))

            p2 = re.compile(r'(<br/><br/>)')

            p3 = re.compile(r'&nbsp;')

            if match:
                sub = p2.sub('\n', match[0])
                sub = p3.sub('', sub)
                print sub

                f.write(sub.encode('utf-8'))
            f.close()
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值