복붙노트

[PYTHON] 파이썬의 기계화 프록시 지원

PYTHON

파이썬의 기계화 프록시 지원

파이썬 mechanize의 프록시 지원에 대한 질문이 있습니다. 일부 웹 클라이언트 스크립트를 만들고 있는데 스크립트에 프록시 지원 기능을 삽입하고 싶습니다.

예를 들어, 내가 가지고있는 것 :

params = urllib.urlencode({'id':id, 'passwd':pw})
rq = mechanize.Request('http://www.example.com', params) 
rs = mechanize.urlopen(rq)

내 기계화 스크립트에 프록시 지원을 추가하려면 어떻게해야합니까? 이 www.example.com 웹 사이트를 열 때마다 프록시를 통과하길 원합니다.

해결법

  1. ==============================

    1.mechanize.Request.set_proxy (host, type)를 사용합니다 (적어도 0.1.11 현재)

    mechanize.Request.set_proxy (host, type)를 사용합니다 (적어도 0.1.11 현재)

    localhost : 8888에서 http 프록시를 실행한다고 가정합니다.

    req = mechanize.Request("http://www.google.com")
    req.set_proxy("localhost:8888","http")
    mechanize.urlopen(req)
    

    일해야한다.

  2. ==============================

    2.그 도움 여부는 모르겠지만 프록시 브라우저를 기계화 할 때 프록시 설정을 지정할 수 있습니다.

    그 도움 여부는 모르겠지만 프록시 브라우저를 기계화 할 때 프록시 설정을 지정할 수 있습니다.

    br = Browser()
    # Explicitly configure proxies (Browser will attempt to set good defaults).
    # Note the userinfo ("joe:password@") and port number (":3128") are optional.
    br.set_proxies({"http": "joe:password@myproxy.example.com:3128",
                    "ftp": "proxy.example.com",
                    })
    # Add HTTP Basic/Digest auth username and password for HTTP proxy access.
    # (equivalent to using "joe:password@..." form above)
    br.add_proxy_password("joe", "password")
    
  3. from https://stackoverflow.com/questions/1997894/pythons-mechanize-proxy-support by cc-by-sa and MIT license