1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- # -*- coding: utf-8 -*-
- """爬虫配置文件"""
- import os
- # MONGODB
- MONGO_IP = "172.17.4.87"
- MONGO_PORT = 27080
- MONGO_DB = "py_spider"
- MONGO_USER_NAME = os.getenv("MONGO_USER_NAME")
- MONGO_USER_PASS = os.getenv("MONGO_USER_PASS")
- # REDIS
- # ip:port 多个可写为列表或者逗号隔开 如 ip1:port1,ip2:port2 或 ["ip1:port1", "ip2:port2"]
- REDISDB_IP_PORTS = "172.17.4.232:7361"
- REDISDB_USER_PASS = "k5ZJR5KV4q7DRZ92DQ"
- REDISDB_DB = 4
- # 适用于redis哨兵模式
- REDISDB_SERVICE_NAME = os.getenv("REDISDB_SERVICE_NAME")
- # 浏览器渲染
- PLAYWRIGHT = dict(
- user_agent=None, # 字符串 或 无参函数,返回值为user_agent
- proxy=None, # xxx.xxx.xxx.xxx:xxxx 或 无参函数,返回值为代理地址
- headless=True, # 是否为无头浏览器
- driver_type="webkit", # chromium、firefox、webkit
- timeout=60, # 请求超时时间
- window_size=(1024, 800), # 窗口大小
- executable_path=None, # 浏览器路径,默认为默认路径
- download_path=None, # 下载文件的路径
- render_time=0, # 渲染时长,即打开网页等待指定时间后再获取源码
- wait_until="networkidle", # 等待页面加载完成的事件,可选值:"commit", "domcontentloaded", "load", "networkidle"
- use_stealth_js=False, # 使用stealth.min.js隐藏浏览器特征
- page_on_event_callback=None, # page.on() 事件的回调 如 page_on_event_callback={"dialog": lambda dialog: dialog.accept()}
- storage_state_path=None, # 保存浏览器状态的路径
- url_regexes=None, # 拦截接口,支持正则,数组类型
- save_all=False, # 是否保存所有拦截的接口, 配合url_regexes使用,为False时只保存最后一次拦截的接口
- )
- # request网络请求超时时间
- REQUEST_TIMEOUT = 30 # 等待服务器响应的超时时间,浮点数,或(connect timeout, read timeout)元组
- # 设置代理
- PROXY_EXTRACT_API = "http://proxy.spdata.jianyu360.com/proxy/getallip" # 代理提取API ,返回的代理分割符为\r\n
- PROXY_ENABLE = True
- # 随机headers
- RANDOM_HEADERS = True
- # UserAgent类型 支持 'chrome', 'opera', 'firefox', 'internetexplorer', 'safari','mobile' 若不指定则随机类型
- USER_AGENT_TYPE = "chrome"
- # 默认使用的浏览器头
- DEFAULT_USERAGENT = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.103 Safari/537.36"
- # requests 使用session
- USE_SESSION = False
- # 下载
- DOWNLOADER = "network.downloader.RequestsDownloader"
- SESSION_DOWNLOADER = "network.downloader.RequestsSessionDownloader"
- RENDER_DOWNLOADER = "network.downloader.PlaywrightDownloader"
- MAKE_ABSOLUTE_LINKS = True # 自动转成绝对连接
- # 企业微信报警
- WECHAT_WARNING_URL = "" # 企业微信机器人api
- WECHAT_WARNING_PHONE = "" # 报警人 将会在群内@此人, 支持列表,可指定多人
- WECHAT_WARNING_ALL = False # 是否提示所有人, 默认为False
- WARNING_INTERVAL = 3600 # 相同报警的报警时间间隔,防止刷屏; 0表示不去重
|