首页 > 解决方案 > 为什么我的代理仍然转发我的个人 IP 地址?

问题描述

我已经被这个问题困扰了一周左右,但我仍然无法弄清楚为什么它不起作用。该程序检查用户名的可用性,但由于以 ip 为目标的速率限制,我需要代理。我使用的代理是免费的,但即使尝试了所有可用的代理排序和列表,它仍然会发生。我知道速率限制是基于 IP 的。代理函数在调用时返回一个新代理。我做到了是http因为同时使用httphttps代理不断出现连接错误。

我的代码:

    # read proxy file
    with open('external/proxies.txt', 'r') as proxyFile:
        proxyList = [proxyIp.strip() for line in proxyFile.readlines() for proxyIp in line.split(',') if proxyIp]

...
    # change proxies
    def proxies(self):
        self.randomProxy = random.choice(self.proxyList)
        print(f"{Fore.LIGHTBLACK_EX}[+]{Fore.RESET} Proxy:          {self.randomProxy}")
        return {'http': f'http://{self.randomProxy}'}

...
    # check api
    def checker(self):
        self.proxer = self.proxies()
        r = requests.get(url, headers=self.headers, proxies=self.proxer)
                  
        if self.checkedCount % 75 == 0:
            self.checkedCount += 1
            self.proxer = self.proxies()
            self.login()
                    
        if r.status_code == 200:
            ...

代码输出:

[+] Proxy:          72.195.34.59:4145
[+] Proxy:          165.22.91.137:50123
[+] Proxy:          70.166.167.36:4145

r.contents 输出:


# on a succesful request (note that "clientIp":"my.own.ip.adr")
b'{"platformType":"uplay","ticket":"1234","twoFactorAuthenticationTicket":null,"profileId":"6c992fe3-3b23-4e9f-8004-5787890b1c02","userId":"6c992fe3-3b23-4e9f-8004-5787890b1c02","nameOnPlatform":"gxzs402","environment":"Prod","expiration":"2021-11-09T23:46:28.3240882Z","spaceId":"8f9fe635-253f-4550-9205-bc797b22ae38","clientIp":"my.own.ip.adr","clientIpCountry":"US","serverTime":"2021-11-09T20:46:28.3267513Z","sessionId":"5a29f740-0f34-4291-add9-ca1b97430a80","sessionKey":"1234","rememberMeTicket":null}'

# on an error
b'{"moreInfo":"","errorCode":1101,"httpCode":429,"errorContext":"Shipyard.Profiles.Services","message":"Too many calls per IP address.","environment":"prod","additionalDetails":{},"transactionTime":"2021-11-09T20:51:52.4189961Z","transactionId":"2cf3f459-0e8d-4533-95df-429c6480450e"}'

标签: pythonproxypython-requests

解决方案


推荐阅读