Python3-正则表达式~爬取猫眼电影应用

import re,json
from urllib import request
#maoyan.com

#1.获取网页内容
base_url='http://maoyan.com/board'
response=request.urlopen(base_url)
html=response.read()
html=html.decode('utf-8')
#写入文件
with open('maoyan_film.html','w',encoding='utf-8') as f:
    f.write(html)

f.close()

#2.提取数据
#(1)缩小范围
# pattern=re.compile(r'<dd>(.*?)</dd>',re.S)#(.*?)只要括号内的内容
pattern=re.compile(r'<dd>.*?</dd>',re.S)#包括<dd>.*?</dd>所有内容
movie_list=pattern.findall(html)
# print(len(s))
# print(s[0])
for movie in movie_list:
    # print(movie)
    # 拿排名
    # pattern=re.compile(r'<i class="board-index board-index-\d*">(\d+)</i>')
    pattern=re.compile(r'<i class="board-index board-index-\d*">(\d{1,2})</i>')

    # index=pattern.search(movie)
    # print(index.group(1))
    index=pattern.findall(movie)
    # print(index[0])

    # 拿名称
    pattern=re.compile(r'title="(.*?)"')
    title=pattern.findall(movie)
    print(title[0])

    # 拿图片
    pattern=re.compile(r'<img data-src="(.*?)@')
    img=pattern.findall(movie)
    print(img[0])

    # 拿主演
    # pattern = re.compile(r'<p class="star">(.*?)</p>')#由于‘\n’原因取不着。
    #方法一
    # pattern=re.compile(r'<p class="star">(.*?)</p>',re.S)
    # star=pattern.findall(movie)
    # print(star[0].strip())

    # 方法2
    pattern = re.compile(r'<p class="star">([\w\W]*?)</p>')  # \s\S,\d\D
    star = pattern.findall(movie)
    print(star[0].strip())

    # 上映时间
    pattern=re.compile(r'<p class="releasetime">(.*?)</p>')
    releaseTime=pattern.findall(movie)
    print(releaseTime[0])

    # 评分
    #方法一
    # pattern=re.compile(r'<i class="integer">(\d\.?)</i>')
    # score1=pattern.findall(movie)
    #
    # pattern = re.compile(r'<i class="fraction">(\d?)</i>')
    # score2 = pattern.findall(movie)
    # print(score1[0]+score2[0])

    # 方法二
    pattern = re.compile(r'<p class="score"><i class="integer">(\d+\.)</i><i class="fraction">(\d)</i></p> ')
    score = pattern.findall(movie)
    print(score[0][0] + score[0][1])
 
 

/Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6 /Users/apple/PycharmProjects/stage4/spider/2018——0307/spider_maoyan_films.py
头号玩家
http://p0.meituan.net/movie/a547dd7f6851d7ced67ec1b6c8b7f3b2447754.jpg
主演:泰尔·谢里丹,奥利维亚·库克,本·门德尔森
上映时间:2018-03-30
9.1
狂暴巨兽
http://p0.meituan.net/movie/d414df29b364e010976c4be97d5ee907290840.jpg
主演:道恩·强森,娜奥米·哈里斯,杰弗里·迪恩·摩根
上映时间:2018-04-13
9.0
起跑线
http://p0.meituan.net/movie/cf9ff1aad19254d99aae31cd53065a271370654.jpg
主演:伊尔凡·可汗,萨巴·卡玛尔,内哈·迪胡皮阿
上映时间:2018-04-04
8.9
黄金花
http://p1.meituan.net/movie/15f0ae1961a0229f71e5c5106a8c55902561485.jpg
主演:毛舜筠,凌文龙,吕良伟
上映时间:2018-04-28
8.8
巴霍巴利王2:终结
http://p0.meituan.net/movie/3e42788f6f6283f430e74ac2381dd6ad151806.jpg
主演:帕拉巴斯,拉纳·达格巴帝,安努舒卡·谢蒂
上映时间:2018-05-04
8.7
青年马克思
http://p1.meituan.net/movie/3b5a995b705b11b5b190e9fd556eecba780985.jpg
主演:奧古斯特·迪赫,史特凡·柯纳斯克,薇姬·克里普斯
上映时间:2018-05-05
8.5
米花之味
http://p0.meituan.net/movie/2129e4efaea8c67a515d6bb0c50cb443992318.jpg
主演:英泽,叶不勒
上映时间:2018-04-20
8.5
脱单告急
http://p0.meituan.net/movie/50fc70e63364f92ff540ef02d26f8102631867.jpg
主演:董子健,钟楚曦,春夏
上映时间:2018-04-20
8.4
21克拉
http://p0.meituan.net/movie/8b154402ef3ac5d59e4a89649f4f5190375170.jpg
主演:郭京飞,迪丽热巴,大鹏
上映时间:2018-04-20
8.2
冰雪女王3:火与冰
http://p1.meituan.net/movie/cb0c58e1da76a387e4433b69627c9680305708.jpg
主演:杰森·格里菲,劳里·海梅斯,迪·布拉雷·贝克尔
上映时间:2018-04-05
8.2


Process finished with exit code 0

猜你喜欢

转载自blog.csdn.net/zbrj12345/article/details/80257387
今日推荐