import argparse #用于命令项选项与参数解析 import os #整理文件和目录 import re #正则表达式 进行文字匹配 import sys #argparse 将会从 sys.argv 中解析出这些参数,并自动生成帮助和使用信息。 import urllib import json import socket import urllib.request #制定url,获取网页数据 import urllib.parse #将url解析为组件 import urllib.error #可以捕获由 urllib.request 产生的异常。 import time # 设置超时 timeout = 5 socket.setdefaulttimeout(timeout) #防止爬虫爬取某个页面时间过长,导致程序卡置不前 class Crawler: __time_sleep = 0.1 # 睡眠时长 __amount = 0 __start_amount = 0 __counter = 0 headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:23.0) Gecko/20100101 Firefox/23.0', 'Cookie': ''} #模拟浏览器头部信息,向服务器发送消息 __per_page = 30 # 获取图片url内容等 # t 下载图片时间间隔 def __init__(self, t=0.1): self.time_sleep = t @staticmethod def get_suffix(name): m = re.search(r'\.[^\.]*$', name) if m.group(0) and len(m.group(0)) <= 5: return m.group(0) else: return '.jpeg' # 获取后缀名 @staticmethod def handle_baidu_cookie(original_cookie, cookies): """ :param string original_cookie: :param list cookies: :return string: """ if not cookies: return original_cookie result = original_cookie for cookie in cookies:
import argparse #用于命令项选项与参数解析 import os #整理文件和目录 import re #正则表达式 进行文字匹配 import sys #argparse 将会从 sys.argv 中解析出这些参数,并自动生成帮助和使用信息。 import urllib import json import socket import urllib.request #制定url,获取网页数据 import urllib.parse #将url解析为组件 import urllib.error #可以捕获由 urllib.request 产生的异常。 import time # 设置超时 timeout = 5 socket.setdefaulttimeout(timeout) #防止爬虫爬取某个页面时间过长,导致程序卡置不前 class Crawler: __time_sleep = 0.1 # 睡眠时长 __amount = 0 __start_amount = 0 __counter = 0 headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:23.0) Gecko/20100101 Firefox/23.0', 'Cookie': ''} #模拟浏览器头部信息,向服务器发送消息 __per_page = 30 # 获取图片url内容等 # t 下载图片时间间隔 def __init__(self, t=0.1): self.time_sleep = t @staticmethod def get_suffix(name): m = re.search(r'\.[^\.]*$', name) if m.group(0) and len(m.group(0)) <= 5: return m.group(0) else: return '.jpeg' # 获取后缀名 @staticmethod def handle_baidu_cookie(original_cookie, cookies): """ :param string original_cookie: :param list cookies: :return string: """ if not cookies: return original_cookie result = original_cookie for cookie in cookies: