2 # -*- coding: utf-8 -*-
9 sys.stdout = codecs.getwriter('utf_8')(sys.stdout)
16 sys.exit(sys.argv[0] + " start end")
18 if (not start.isdigit()) or (not start.isdigit()):
19 sys.exit(sys.argv[0] + " start end")
25 otp = otptools.otptools("./cookies.txt", uname)
29 sys.stderr.write("cannot use cookie file. create.\n")
31 if otp.get_cookie() == "":
34 uname = raw_input("user: ")
35 except KeyboardInterrupt:
38 passwd = getpass.getpass("login password:")
39 except KeyboardInterrupt:
41 if otp.login(uname, passwd) != 1:
42 sys.exit("login error!")
46 start_index = int(start)
49 sys.stderr.write( "retrieving lists..." )
51 for index in range(start_index, max_index, 40):
52 html = otp.get_list(index)
53 story_infos = otp.parse_list( html, story_infos )
55 sys.stderr.write( "sorting..." )
56 sort_keys = story_infos.keys()
57 sort_keys.sort(lambda x,y: cmp(story_infos[y], story_infos[x]))
59 sys.stderr.write( "retrieving tags..." )
61 tags = otp.get_tags( "http:" + url )
63 story_infos[url]["tags"] = unicode( "|".join(tags), "utf_8" )
67 for item in story_infos[url]:
68 str =story_infos[url][item]
69 print "%(url)s,%(title)s,%(editor)s,%(page_views)s,%(comments)s,%(datetime)s,%(tags)s" % story_infos[url]
71 sys.stderr.write( "done.\n" )