|  | 
 
 
 楼主|
发表于 2018-8-16 23:21:39
|
显示全部楼层 
| import urllib.request import os
 import random
 
 
 def url_open(url):
 req = urllib.request.Request(url)
 req.add_header('User-Agent', 'Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.65 Safari/537.36')
 
 '''proxies = ['119.6.144.70:81', '111.1.36.9:80', '203.144.144.162:8080']
 proxy = random.choice(proxies)
 
 proxy_support = urllib.request.ProxyHandler({'http':proxy})
 opener = urllib.request.build_opener(proxy_support)
 urllib.request.install_opener(opener)'''
 
 response = urllib.request.urlopen(url)
 html = response.read()
 
 return html
 
 
 def get_page(url):
 html = url_open(url).decode('utf-8')
 
 a = html.find('current-comment-page') + 23
 b = html.find(']', a)
 
 return html[a:b]
 
 
 def find_imgs(url):
 html = url_open(url).decode('utf-8')
 img_addrs = []
 
 a = html.find('img src=')
 
 while a!= -1:
 b = html.find('.jpg', a, a+255)
 if b != -1:
 img_addrs.append(html[a+9:b+4])
 else:
 b = a+9
 
 a = html.find('img src=', b)
 
 for each in img_addrs:
 print(each)
 
 
 
 def save_imgs(folder, img_addrs):
 pass
 
 def download_mm(folder='OOXX', pages=10):
 os.mkdir(folder)
 os.chdir(folder)
 
 url = "http://jandan.net/ooxx/"
 page_num = int(get_page(url))
 
 for i in range(pages):
 page_num -= i
 page_url = url + 'page-' + str(page_num) + '#comments'
 img_addrs = find_imgs(page_url)
 save_imgs(folder, img_addrs)
 
 if __name__ == '__main__':
 download_mm()
 
 源码
 | 
 |