设为首页收藏本站

Crossin的编程教室

 找回密码
 立即加入
楼主: crossin先生
打印 上一主题 下一主题

Python 实战(5):拿来主义

[复制链接]

0

主题

0

好友

48

积分

新手上路

Rank: 1

楼主
发表于 2015-7-12 14:20:19 |显示全部楼层
打印出结果,发现只有 20 条。又查了下文档,原来 Top250 接口还有两个可选参数:start 和 count,表示从第几位开始取,取多少条。

那么把代码调整下,外面增加一层循环。为了避免连续请求太快,在每次循环中,通过  time.sleep 方法停顿 3 秒钟。另外,把取到的电影 id 都存入一个变量中:

import urllib
import json
import time

movie_ids = []
for index in range(0, 250 ,50):
    print index
    response = urllib.urlopen('http://api.douban.com/v2/movie/top250?start=%d&count=50' % index)
    data = response.read()
    # print data

    data_json = json.loads(data)
    movie250 = data_json['subjects']
    for movie in movie250:
        movie_ids.append(movie['id'])
        print movie['id'], movie['title']
    time.sleep(3)
print movie_ids

老师,这里不太理解外面增加一层循环是什么意思。
代码运行后只是前20条在不停重复,怎么办?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即加入

QQ|手机版|Archiver|Crossin的编程教室 ( 苏ICP备15063769号  

GMT+8, 2024-5-3 08:04 , Processed in 0.016585 second(s), 22 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部