二级页面下载地址爬取

import csv                       #导入CSV模块写入
import re                        #导入正则包
import random                    #导入随机生成包
from ua_info import ua_list      #导入构建的代理池
from urllib import request       #导入urllib下request

#构建一个类
class Dyttspider(object):
#定义常量
    def __init__(self):
        self.url = 'https://www.dytt8.net/html/gndy/dyzz/list_23_1.html'
        # self.url1 = 'https://www.dytt8.net/{}'
#正则解析函数
    def parse_html(self, html):
        bds = '<table width="100%".*?<td width="5%".*?class="ulink">(.*?)</a>.*?</table>'
        pattern = re.compile(bds,re.S)
        l_list = pattern.findall(html)
        for i in l_list:
            print('movie:%s \n' %i)


        #print(l_list)
        return l_list
#请求函数,并返回Unicode字符串
    def get_html(self, url):
        headers = {'User-Agent': random.choice(ua_list)}
        req = request.Request(url=url, headers=headers)
        res = request.urlopen(req)
        html = res.read().decode('gb2312', 'ignore')
        print('OK')
        return html
#储存函数,将数据储存至目标文件
    def save_file(self,l_list):
        with open('maoyan.csv', 'w', newline='', encoding="utf-8") as f:
            writer = csv.writer(f)
            writer.writerow(l_list)
#主函数,控制整体逻辑
    def run(self):
        url = self.url
        html1 = self.get_html(url)
        self.parse_html(html1)
        #self.save_file(jiexi)

#以脚本启动
if __name__ == "__main__":
    spider = Dyttspider()
    spider.run()
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值