|
2 | 2 | import requests |
3 | 3 | from os import environ |
4 | 4 | import re |
5 | | -from random import choice |
6 | 5 |
|
7 | 6 | from python_anticaptcha import AnticaptchaClient, FunCaptchaTask |
8 | 7 |
|
9 | 8 | api_key = environ["KEY"] |
10 | 9 | site_key_pattern = 'public_key: "(.+?)",' |
| 10 | +site_key_pattern = 'public_key: "(.+?)",' |
| 11 | +surl_pattern = 'surl: "(.+?)",' |
11 | 12 | url = "https://client-demo.arkoselabs.com/solo-animals" |
12 | 13 | client = AnticaptchaClient(api_key) |
13 | 14 | session = requests.Session() |
@@ -37,23 +38,31 @@ def get_form_html(): |
37 | 38 |
|
38 | 39 | def get_token(form_html): |
39 | 40 | proxy = parse_url(proxy_url) |
40 | | - |
41 | 41 | site_key = re.search(site_key_pattern, form_html).group(1) |
42 | | - task = FunCaptchaTask(url, site_key, user_agent=UA, **proxy) |
| 42 | + print("Determined site-key:", site_key) |
| 43 | + surl = re.search(surl_pattern, form_html).group(1) |
| 44 | + print("Determined surl:", surl) |
| 45 | + task = FunCaptchaTask(surl, site_key, user_agent=UA, **proxy) |
43 | 46 | job = client.createTask(task) |
44 | | - job.join(maximum_time=10 ** 4) |
| 47 | + job.join(maximum_time=10**4) |
45 | 48 | return job.get_token_response() |
46 | 49 |
|
47 | 50 |
|
48 | 51 | def form_submit(token): |
49 | 52 | return requests.post( |
50 | | - url="{}/verify".format(url), data={"name": "xx", "fc-token": token} |
| 53 | + url="{}/verify".format(url), |
| 54 | + data={"name": "xx", "fc-token": token}, |
| 55 | + proxies={ |
| 56 | + "http": proxy_url, |
| 57 | + "https": proxy_url, |
| 58 | + }, |
51 | 59 | ).text |
52 | 60 |
|
53 | 61 |
|
54 | 62 | def process(): |
55 | 63 | html = get_form_html() |
56 | 64 | token = get_token(html) |
| 65 | + print("Received token:", token) |
57 | 66 | return form_submit(token) |
58 | 67 |
|
59 | 68 |
|
|
0 commit comments