Python请求中的代理

Python请求中的代理,python,python-requests,proxies,Python,Python Requests,Proxies,所以我用代理代理代理刮取了一些代理。有时候,代理在刮的时候会死,所以我想在使用它们之前检查它们。所以我用Python请求编写了一个程序来检查它们。这是: import time import random import requests lines = open('not_checked.txt').read().splitlines() check =random.choice(lines) yaya = { check } for x in range(0 , 10): requ

所以我用代理代理代理刮取了一些代理。有时候,代理在刮的时候会死,所以我想在使用它们之前检查它们。所以我用Python请求编写了一个程序来检查它们。这是:

import time
import random
import requests
lines = open('not_checked.txt').read().splitlines()
check =random.choice(lines)
yaya = {
  check
}
for x in range(0 , 10):
    requests.get('https://reg.ebay.com/reg/PartialReg?ru=https%3A%2F%2Fwww.ebay.com%2F': proxies=yaya)
    r.status_code
    print(status_code)

    if status_code == 200:
        f=open("checked_proxies.txt", "a+")
        f.write(proxies)
    else:
       time.sleep(.001)
但是,这会抛出“set对象没有属性get”。我在网上查到这个错误,它说是因为我用了逗号而不是冒号。于是我试着:

requests.get('https://reg.ebay.com/reg/PartialReg?ru=https%3A%2F%2Fwww.ebay.com%2F': proxies=yaya)

获取语法错误。发生了什么事

代理
需要是一个命令。它是:


您的
yaya
是一个
集合
而不是
dict
代理
需要是一个dict。它是:


你的
yaya
是一个
set
而不是
dict

肯定会有逗号而不是分号。 示例代码段

import time
import random
import requests
lines = open('proxies.txt').read().splitlines()
# check =random.choice(lines)
proxies = [
    {
      "http": "XXX.XXX.XXX.XXX:XXXX",
      "https": "XXX.XXX.XXX.XXX:XXXX",
    },
    {
      "http": "XXX.XXX.XXX.XXX:XXXX",
      "https": "XXX.XXX.XXX.XXX:XXXX",
    },
    {
      "http": "XXX.XXX.XXX.XXX:XXXX",
      "https": "XXX.XXX.XXX.XXX:XXXX",
    }
]
for proxy in proxies:
    print("Requesting with %s and %s"%(proxy['http'], proxy['https']))
    r = requests.get('https://reg.ebay.com/reg/PartialReg?ru=https%3A%2F%2Fwww.ebay.com%2F', proxies=proxy)
    print("Loaded")
    r.status_code
    print(r.status_code)
    if r.status_code == 200:
        f=open("checked_proxies.txt", "a+")
        f.write(proxy)
    else:
        time.sleep(.001)

肯定会有逗号而不是分号。 示例代码段

import time
import random
import requests
lines = open('proxies.txt').read().splitlines()
# check =random.choice(lines)
proxies = [
    {
      "http": "XXX.XXX.XXX.XXX:XXXX",
      "https": "XXX.XXX.XXX.XXX:XXXX",
    },
    {
      "http": "XXX.XXX.XXX.XXX:XXXX",
      "https": "XXX.XXX.XXX.XXX:XXXX",
    },
    {
      "http": "XXX.XXX.XXX.XXX:XXXX",
      "https": "XXX.XXX.XXX.XXX:XXXX",
    }
]
for proxy in proxies:
    print("Requesting with %s and %s"%(proxy['http'], proxy['https']))
    r = requests.get('https://reg.ebay.com/reg/PartialReg?ru=https%3A%2F%2Fwww.ebay.com%2F', proxies=proxy)
    print("Loaded")
    r.status_code
    print(r.status_code)
    if r.status_code == 200:
        f=open("checked_proxies.txt", "a+")
        f.write(proxy)
    else:
        time.sleep(.001)

您不必硬编码代理。但是你确实需要创建一个
dict
,其中密钥是协议。明白了。让我试试,我会给你回复的。感谢您的帮助,您不必硬编码代理。但是你确实需要创建一个
dict
,其中密钥是协议。明白了。让我试试,我会给你回复的。谢谢你的帮助