温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

爬取豆瓣的tp250电影名单

发布时间:2020-07-28 23:41:19 来源:网络 阅读:410 作者:even_07 栏目:编程语言
#       https://movie.douban.com/top250?start=25&filter=   要爬取的网页

import re
from urllib.request import urlopen

def getPage(url):
    response=urlopen(url)
    return response.read().decode('utf-8')

def parsePage(s):
    ret=com.finditer(s)
    for i in ret:
        ret={
            'id': i.group('id'),
            'move_name':i.group('move_name'),
            'move_d':i.group( 'move_d'),
            'move_t':i.group('move_t'),
            'content': i.group('content'),
            'infor':i.group('infor')
        }
        yield  ret

def main(num):
    url='https://movie.douban.com/top250?start=%s&filter= ' %num
    res=getPage(url)
    ret=parsePage(res)
    print(ret)
    f=open('move',mode='a+',encoding='utf-8')
    for obj in ret:
        print(obj)
        data1=str(obj).replace('\\n','')
        data2=data1.replace(' ','')
        f.write(data2 + '\n')
    f.close()

com=re.compile('<div class="item">(?:.*?)<em class="">(?P<id>.*?)</em>(?:.*?)alt=(?P<move_name>.*?)src(?:.*?)导演:'
            '(?P<move_d>.*?)&nbsp;(?:.*?)<br>(?P<move_t>.*?)&nbsp(?:.*?)&nbsp;/&nbsp;(?P<content>.*?)</p>(?:.*?)<span class="inq">(?P<infor>.*?)</span>',re.S)

count=0
for i in range(10):
    main(count)
    count+=25
向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI