2017-04-26 33 views
0

私はプロキシを使用してHTMLを取得しようとしているが、サーバーが200エラー200のpython

EDITを返します:プロキシがある

def FindHtml(self, text): 
    site = text 
    #headers = {'User-agent' : 'Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.4; en-US; rv:1.9.2.2) Gecko/20100316 Firefox/3.6.2'} 
    headers = {'User-agent' : 'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0)'} 
    proxy_support = self.proxi() 
    opener = urllib2.build_opener(proxy_support, urllib2.HTTPHandler(debuglevel=1)) 
    urllib2.install_opener(opener) 
    page="" 
    #req = urllib2.Request(site, None,headers) 
    req = urllib2.Request(site, None,headers) 
    try: 
     page = urllib2.urlopen(req).read() 
    except urllib2.HTTPError, e: 
     print e.fp.read() 
    content = page 
    #print content 
    return content 

ユーザーエージェント要求を変更 :

def proxi(self): 
    print "proxy" 
    n = random.randrange(0,1,1) 
    if n == 0: 
     print "es 0 "#52.183.30.241 8888 
     link = 'http://162.243.77.188:3128' 
    else: 
     if n == 1: 
      print "es 1" #54.183.3.46 80 
      link = 'http://47.88.85.75:80' 
    pro_s = urllib2.ProxyHandler({'http' : link }) 
    return pro_s 

応答:

send: u'GET http://mangadoor.com/manga/fairy-tail/521/1 HTTP/1.1\r\nAccept-Encoding: identity\r\nHost: mangadoor.com\r\nConnection: close\r\nUser-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0)\r\n\r\n' 
reply: 'HTTP/1.1 200 OK\r\n' 
header: Server: openresty/1.11.2.2 
header: Date: Thu, 27 Apr 2017 03:46:00 GMT 
header: Content-Type: text/html; charset=UTF-8 
header: Transfer-Encoding: chunked 
header: Connection: close 
header: Set-Cookie: __cfduid=d4b16b5d5caac66c54bd9a278abd397771493264759; expires=Fri, 27-Apr-18 03:45:59 GMT; path=/; domain=.mangadoor.com; HttpOnly 
header: X-Powered-By: PHP/5.6.30 
header: Cache-Control: no-cache 
header: Set-Cookie: laravel_session=eyJpdiI6IndYOVlINnZsNG9yaENrM21MODNmd0E9PSIsInZhbHVlIjoiYXVWRHRmQThwbTQ1UDJxM1o0cEdmbnVxVkxOYzdxRm9sTk1jZmRpVndRM1l3SVwveWRWWGMxSm5VNGpwbm8zWEV5TEFtRFdzNmJzSEF3R3Axd0ZCK0R3PT0iLCJtYWMiOiI1YmE0NDUwN2YxMzYwY2RlMzA1ZjYwMDg2MTQ1ZjczZTM0NTczOWY0NWNjYzU2NGExMjAxYWFmOTE1NGE4OGExIn0%3D; expires=Thu, 27-Apr-2017 05:45:59 GMT; Max-Age=7200; path=/; httponly 
header: Vary: Accept-Encoding 
header: CF-RAY: 355ecacc3584186a-EWR 

私のコードの問題点は何ですか?

答えて

0

サーバのように表示されるのは、GET/HEADメソッドのみです。

""をデータとして使用しているので、POSTメソッドを使用して開始されます。だからあなたはおそらく許可されていないメソッドを受け取っているのです。

変更以下のようにリクエストラインと結果を参照してください -

REQ =はurllib2.Request(サイト、なし、ヘッダ)

+0

することは私の問題を解決するためのおかげで、それは今、新しい応答を返します私は質問を更新する –

関連する問題