python 豆瓣爬虫

一会要坐火车,想看一下高分的电影,打发时间。所以写了一个抓取工具。

'''
 **
 * 查找分数大于8.5分的动作电影.
 * User: iwonmo
 * Date: 2019/5/24
 * Time: 15:53
 *
'''
#!/usr/bin/python
# coding:utf-8
import urllib.request
import re
import demjson
#计数
n = 0
#错误判断
err = 0
# 读取网页源码
def getHtml(url):
    page = urllib.request.urlopen(url)
    return page.read()
 
#主要功能逻辑
def showList(url):
    global  n
    html = getHtml(url)
    if html.decode() == "[]" : #出错了
        err = 1
        return    
    html = demjson.decode(html);
    for _each in html:
        # title  score url release_date
        if float(_each['score']) > 8.8 : #寻找大于此分的电影
            _release_date = _each['release_date']
            _title = _each['title']
            _score = _each['score']
            n += 1
            print(_release_date,_title,_score)
            
#入口函数    
def main():
    global  n
    for num in range(1,3000):
        if n > 10000 or err == 1: #10000部后退出或者出错后退出
            break
        if num == 1:
            url = 'https://movie.douban.com/j/chart/top_list?type=5&interval_id=100%3A90&action=&start='+str(num)+'&limit=20'
            showList(url);
        else:
            url = 'https://movie.douban.com/j/chart/top_list?type=5&interval_id=100%3A90&action=&start='+str((num-1)*20)+'&limit=20'
            showList(url);
    print("总数:%d" % n);
    
if __name__ == '__main__':
    main()


结果几乎都是老电影,还在继续爬。。。

微信截图_20190524155720.png

查询的地址:https://movie.douban.com/chart 点击右侧分类,查看Network


python 豆瓣爬虫


本站如无特别说明即为原创,转而告知:(http://iwonmo.com/archives/1560.html)

标签: python爬虫

仅有一条评论

  1. repostone repostone 回复 2019-05-28 16:11

    非技术的路过。

添加新评论