Python爬虫:scrapy-splash的请求头和代理参数设置

简介: Python爬虫:scrapy-splash的请求头和代理参数设置

3中方式任选一种即可


1、lua中脚本设置代理和请求头:

function main(splash, args)
  -- 设置代理        
  splash:on_request(function(request)
        request:set_proxy{
         host = "27.0.0.1",
         port = 8000,
     }
  end)
    -- 设置请求头
    splash:set_user_agent("Mozilla/5.0")
    -- 自定义请求头
   splash:set_custom_headers({
    ["Accept"] = "application/json, text/plain, */*"
    })
    splash:go("https://www.baidu.com/")
    return splash:html()

2、scrapy中设置代理

def start_requests(self):
    for url in self.start_urls:
        yield SplashRequest(url,
            endpoint='execute',
            args={'wait': 5,
                  'lua_source': source,
                  'proxy': 'http://proxy_ip:proxy_port'
                  }

scrapy中设置请求头一样的在headers中设置


3、中间件中设置代理


class ProxyMiddleware(object):
      def process_request(self, request, spider):
       request.meta['splash']['args']['proxy'] = proxyServer
       request.headers["Proxy-Authorization"] = proxyAuth

参考:

相关文章
|
2月前
|
数据采集 Web App开发 数据安全/隐私保护
实战:Python爬虫如何模拟登录与维持会话状态
实战:Python爬虫如何模拟登录与维持会话状态
|
2月前
|
数据采集 监控 数据库
Python异步编程实战:爬虫案例
🌟 蒋星熠Jaxonic,代码为舟的星际旅人。从回调地狱到async/await协程天堂,亲历Python异步编程演进。分享高性能爬虫、数据库异步操作、限流监控等实战经验,助你驾驭并发,在二进制星河中谱写极客诗篇。
Python异步编程实战:爬虫案例
|
2月前
|
数据采集 存储 JSON
Python爬虫常见陷阱:Ajax动态生成内容的URL去重与数据拼接
Python爬虫常见陷阱:Ajax动态生成内容的URL去重与数据拼接
|
2月前
|
数据采集 存储 JavaScript
解析Python爬虫中的Cookies和Session管理
Cookies与Session是Python爬虫中实现状态保持的核心。Cookies由服务器发送、客户端存储,用于标识用户;Session则通过唯一ID在服务端记录会话信息。二者协同实现登录模拟与数据持久化。
|
数据采集 Python
python编程-28:Scrapy爬虫框架
python编程-28:Scrapy爬虫框架
173 0
python编程-28:Scrapy爬虫框架
|
数据采集 Python
python编程-28:Scrapy爬虫框架
python编程-28:Scrapy爬虫框架
678 0
python编程-28:Scrapy爬虫框架
|
3月前
|
数据采集 机器学习/深度学习 人工智能
Python:现代编程的首选语言
Python:现代编程的首选语言
291 102
|
3月前
|
数据采集 机器学习/深度学习 算法框架/工具
Python:现代编程的瑞士军刀
Python:现代编程的瑞士军刀
314 104
|
3月前
|
人工智能 自然语言处理 算法框架/工具
Python:现代编程的首选语言
Python:现代编程的首选语言
262 103
|
3月前
|
机器学习/深度学习 人工智能 数据挖掘
Python:现代编程的首选语言
Python:现代编程的首选语言
193 82

推荐镜像

更多