Git Product home page Git Product logo

python-anticaptcha's Introduction

python-anticaptcha

image

Python package

Join the chat at https://gitter.im/python-anticaptcha/Lobby

Python compatibility

Client library for solve captchas with Anticaptcha.com support. The library supports both Python 2.7 and Python 3.

The library is cyclically and automatically tested for proper operation. We are constantly making the best efforts for its effective operation.

In case of any problems with integration - read the documentation, create an issue, use Gitter or contact privately.

Getting Started

Install as standard Python package using:

pip install python-anticaptcha

Usage

To use this library do you need Anticaptcha.com API key.

Solve recaptcha

Example snippet for Recaptcha:

from python_anticaptcha import AnticaptchaClient, NoCaptchaTaskProxylessTask

api_key = '174faff8fbc769e94a5862391ecfd010'
site_key = '6Le-wvkSAAAAAPBMRTvw0Q4Muexq9bi0DJwx_mJ-'  # grab from site
url = 'https://www.google.com/recaptcha/api2/demo'

client = AnticaptchaClient(api_key)
task = NoCaptchaTaskProxylessTask(url, site_key)
job = client.createTask(task)
job.join()
print job.get_solution_response()

The full integration example is available in file examples/recaptcha.py.

If you only process few page many times to increase reliability, you can specify whether the captcha is visible or not. This parameter is not required, as is the system detects invisible sitekeys automatically, and needs several recursive measures for automated training and analysis. For provide that pass is_invisible parameter to NoCaptchaTaskProxylessTask or NoCaptchaTask eg.:

from python_anticaptcha import AnticaptchaClient, NoCaptchaTaskProxylessTask

api_key = '174faff8fbc769e94a5862391ecfd010'
site_key = '6Lc-0DYUAAAAAOPM3RGobCfKjIE5STmzvZfHbbNx'  # grab from site
url = 'https://losangeles.craigslist.org/lac/kid/d/housekeeper-sitting-pet-care/6720136191.html'

client = AnticaptchaClient(api_key)
task = NoCaptchaTaskProxylessTask(url, site_key, is_invisible=True)
job = client.createTask(task)
job.join()
print job.get_solution_response()

Solve text captcha

Example snippet for text captcha:

from python_anticaptcha import AnticaptchaClient, ImageToTextTask

api_key = '174faff8fbc769e94a5862391ecfd010'
captcha_fp = open('examples/captcha_ms.jpeg', 'rb')
client = AnticaptchaClient(api_key)
task = ImageToTextTask(captcha_fp)
job = client.createTask(task)
job.join()
print job.get_captcha_text()

Solve funcaptcha

Example snippet for funcaptcha:

from python_anticaptcha import AnticaptchaClient, FunCaptchaTask, Proxy
UA = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 ' \
     '(KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36'

api_key = '174faff8fbc769e94a5862391ecfd010'
site_key = 'DE0B0BB7-1EE4-4D70-1853-31B835D4506B'  # grab from site
url = 'https://www.google.com/recaptcha/api2/demo'
proxy = Proxy.parse_url("socks5://login:[email protected]")

client = AnticaptchaClient(api_key)
task = FunCaptchaTask(url, site_key, proxy=proxy, user_agent=user_agent)
job = client.createTask(task)
job.join()
print job.get_token_response()

Report incorrect image

Example snippet for reporting an incorrect image task:

from python_anticaptcha import AnticaptchaClient, ImageToTextTask

api_key = '174faff8fbc769e94a5862391ecfd010'
captcha_fp = open('examples/captcha_ms.jpeg', 'rb')
client = AnticaptchaClient(api_key)
task = ImageToTextTask(captcha_fp)
job = client.createTask(task)
job.join()
print job.get_captcha_text()
job.report_incorrect()

Setup proxy

The library is not responsible for managing the proxy server. However, we point to the possibility of simply launching such a server by:

pip install mitmproxy
mitmweb -p 9190 -b 0.0.0.0 --ignore '.' --socks

Next to in your application use something like:

proxy = Proxy.parse_url("socks5://123.123.123.123:9190")

We recommend entering IP-based access control for incoming addresses to proxy. IP address required by Anticaptcha.com is:

69.65.41.21
209.212.146.168

Error handling

In the event of an application error, the AnticaptchaException exception is thrown. To handle the exception, do the following:

from python_anticaptcha import AnticatpchaException, ImageToTextTask

try:
    # any actions
except AnticatpchaException as e:
    if e.error_code == 'ERROR_ZERO_BALANCE':
        notify_about_no_funds(e.error_id, e.error_code, e.error_description)
    else:
        raise

Versioning

We use SemVer for versioning. For the versions available, see the tags on this repository.

Authors

  • Adam Dobrawy - Initial work - ad-m

See also the list of contributors who participated in this project.

License

This project is licensed under the MIT License - see the LICENSE.md file for details

python-anticaptcha's People

Contributors

ad-m avatar arezak avatar gastzars avatar joaonevess avatar quantifiedcode-bot avatar smeinecke avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

python-anticaptcha's Issues

Passing Image from URL to ImageToTextTask

I need to solve a text captcha. The image can be found in an URL. It appears while signing up to Microsoft Bing rewards over this link: https://login.live.com/

Image URL example (not valid):
https://scu.client.hip.live.com/GetHIPData?hid=SCU.7d4fbbb987354a1fa58dfbf33241b8fb&fid=1c16cac9d7d3295f93438e50d37c13ed&id=15041&type=visual&cs=HIPAMFE

How can I pass the image from URL to the ImageToTextTask(captcha_fp)

Normally this function takes a file pointer (I guess) like this:

captcha_fp = open('examples/captcha_ms.jpeg', 'rb')
client = AnticaptchaClient(api_key)
task = ImageToTextTask(captcha_fp)

Is there a way to pass the image directly to the ImageToTextTask(captcha_fp) ?

failed and stuck when createTaskSmee Task

task = NoCaptchaTaskProxylessTask(website_url=url, website_key=site_key ) try: print ('create task') job = client.createTaskSmee(task) print ('join...') job.join() print ('wait response!!') g_response = job.get_solution_response() except: print (traceback.print_exc())

Often stuck at 'client.createTaskSmee(task)', does anyone have same experience?

Again Integrating selenium/not submitting form

I am sorry for the duplicate. I already posted in the closed issue #19
But I am not sure if anyone read it, because its closed.

So here again:

@ad-m
I really tried hard using your code with selenium and chrome.
I want to login on https://www.swagbucks.com/p/login
grafik

I can't get it working. I am getting following error message:

in process token = get_token(url, site_key, invisible_captcha) 
in get_token is_invisible=invisible
TypeError: __init__() got an unexpected keyword argument 'is_invisible'

is_invisible is set to True globally. Changing it to False or removing it does also not work.
Please help me. I really have no idea what I am doing wrong.

Selenium Not reachable element

Hello adam , first of all thanks for your repository it is really helpful!
I'm trying to bypass the captcha on this website https://www.similarweb.com/
to make automated tests

The thing is no matter which one i choose its always says
NoSuchElementException: Message: Unable to locate element: #recaptcha-verify-button
here is my code do you have any ideas
#!/usr/bin/env python

coding: utf-8

from selenium import webdriver
from selenium.webdriver import Firefox

from selenium.webdriver.firefox.options import Options
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.ui import Select
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from python_anticaptcha import AnticaptchaClient, NoCaptchaTaskProxylessTask
import os
import time

api_key = '********'

set your account / password

email = '**'
password = '
'

Open web-browser

options = Options()

options.add_argument('-headless')

driver = Firefox(options=options)
driver.get('https://account.similarweb.com/login')
driver.find_element_by_css_selector('#UserName--1').send_keys(email)
driver.find_element_by_css_selector('#Password--2').send_keys(password)
driver.find_element_by_css_selector('#authApp > main > div > div.login__authbox > form > button').click()

Save required variables

url = driver.current_url
site_key = '6LfEq1gUAAAAACEE4w7Zek8GEmBooXMMWDpBjI6r'

Send site-key to Anti-captcha

client = AnticaptchaClient(api_key)
task = NoCaptchaTaskProxylessTask(url, site_key)
job = client.createTask(task)
print("Waiting to recaptcha solution")
job.join()

Receive response

response = job.get_solution_response()
print("Received solution", response)

Inject response in webpage

driver.execute_script('document.getElementById("g-recaptcha-response").innerHTML = "%s"' % response)

Wait a moment to execute the script (just in case).

time.sleep(1)

Press submit button

driver.find_element_by_css_selector('#recaptcha-verify-button').click()

Hcaptcha

Hi! Today I've encountered on this website (https://www.43einhalb.com/) a different kind of captcha, called hCaptcha, which is very similar to the reCaptcha. Anticaptch already support this kind of captchas.
My question is, will you upgrade the captcha solvers to support the API of that solve them?
If you won't, how I have to approach to the code to solve it myself? I ask because I'm not sure if I can do it myself or not

Thanks in advance!

Passing Token

I am trying to use the library on captchas that I get with Google-Scholar when trying to get citing papers for a source. A typical URL looks like

https://scholar.google.com/scholar?cites=12685256029779217548&as_sdt=2005&sciodt=0,5&hl=en

which if fetched with python sometimes produces a captcha. The HTML code of the captcha site contains the following tags, which seem to be relevant for the use of the anticaptcha library:

<script> 
	function gs_captcha_cb(){grecaptcha.render("gs_captcha_c",{"sitekey":"6LfFDwUTAAAAAIyC8IeC3aGLqVpvrB6ZpkfmAibj","callback":function(){document.getElementById("gs_captcha_f").submit()}});};
</script>
<form method="get" id="gs_captcha_f">
	<h1>Please show you&#39;re not a robot</h1>
	<div id="gs_captcha_c"></div>
	<script src="//www.google.com/recaptcha/api.js?onload=gs_captcha_cb&render=explicit&hl=en" async defer></script>
	<input type=hidden name="hl" value="en">
	<input type=hidden name="as_sdt" value="0,5">
	<input type=hidden name="sciodt" value="0,5">
	<input type=hidden name="cites" value="12685256029779217548">
	<input type=hidden name="scipsc" value="">
</form>

I had a look at recaptcha_selenium.py. However, the above HTML code does not contain the function onSuccess() and my attempts to construct another function call such as

driver.execute_script("document.getElementById('gs_captcha_f').submit({})';".format(token))

did not yield anything.

Is there a way to deal with the situation above using the anticaptcha library?

How to solve captcha on website with ImageToTextTask

I am using selenium with python and want to solve a text captcha
The captcha can NOT be read from the URL with something like:

url = browser.find_element_by_id('captchaImg').get_attribute("src")
task = ImageToTextTask(session.get(url, stream=True).raw)

It is not working because I get a different captcha from the one I see on the website.

So I do need to find a way to read the captcha image from the website directly.

I can get the captcha image and read the base64 image data with:

ele_captcha = browser.find_element_by_id('captchaImg') 
img_captcha_base64 = ele_captcha.screenshot_as_base64

Is there a way to use this base64 data with python-anticaptcha ImageToTextTask?

def solve_captcha(img_captcha_base64):    
    client = AnticaptchaClient(api_key)
    task = ImageToTextTask(img_captcha_base64)
    job = client.createTask(task)
    job.join()
    return job.get_captcha_text()

I am still trying. I would appreciate any help.

Issues with hcaptcha and selenium on artstation.com

I'm having trouble solving artstation's login hcaptcha with selenium. Using requests is not an option because it requires javascript enabled, and the usual actions like for the recaptcha selenium examples don't seem to work.
The error I get is "Incorrect. Please try again".

Note that not everyone gets the login captcha, some IPs are excluded from it for some reason. Might have to use a VPN to force it showing.

If it helps, I can provide the page source.
I can extract the data-sitekey value just fine and I readd it with execute_script, assigning the token to the innerHTML of [name='g-recaptcha-response'], but it still doesn't work.

Selenium not submitting form with anticaptcha

@ad-m
I really tried hard using your code with selenium and chrome.
I want to login on https://services.aig.co.il/PersonalServices/#/login;url=%2Fhome

when I'm trying to login after some attempts there is Recaptcha and I have API_KEY and SITE_KEY. I got a token using website_url and site_key. but still, a successful login is not working.

api_key = "**********************"
client = AnticaptchaClient(api_key)


def get_token(website_url, site_key, invisible):
    task = NoCaptchaTaskProxylessTask(
        website_url=website_url,
        website_key=site_key,
        is_invisible=invisible
    )
    job = client.createTask(task)
    job.join()
    return job.get_solution_response()

I got token succesfull but I don't know what is not woking when i'm trying to submit form.

 site_key = "6LcJ8QgUAAAAAB_VRlbua73AhNAp7b6AVLw-cORX"
__SITE_HOME_PAGE_FOR_CRAWLING = 'https://services.aig.co.il/PersonalServices/#/login;url=%2Fhome'
 print("Found site-key", site_key)
 invisible_captcha = False
 token = get_token(__SITE_HOME_PAGE_FOR_CRAWLING, site_key, invisible_captcha)
 print("Found token", token)
 print("Received challenge-response")

 # Inject response in webpage
 current_user_driver.execute_script('document.getElementById("g-recaptcha-response").innerHTML = "%s"' % token)

 # submit form
 login_form = WebDriverWait(current_user_driver, 10).until(
            EC.presence_of_element_located((By.CLASS_NAME, "login__form")))
 submit_button = WebDriverWait(login_form, 10).until(
            EC.element_to_be_clickable((By.CLASS_NAME, "login__form__button")))
 submit_button.click()

Too long responds

When trying to solve the recaptcha "I am not a robot", I receive too long responses and I am pretty sure these tokens are invalid.
Maybe I am wrong, but I am pretty sure that's the issue. Here is the code I am using:
https://pastebin.com/cBjzcRN1

Find sitekey

Hello
I'm trying to get site key from
https://siptv.app/mylist/
I find this key from the link
6LdZsJsUAAAAAJaM1WOM8XghXQ9JETBPGftJ0mhE
in this link
https://www.google.com/recaptcha/api2/anchor?ar=1&k=6LdZsJsUAAAAAJaM1WOM8XghXQ9JETBPGftJ0mhE&co=aHR0cHM6Ly9zaXB0di5hcHA6NDQz&hl=es-419&v=JPZ52lNx97aD96bjM7KaA0bo&theme=light&size=normal&cb=5m3zslns1v40

but when I'm injecting the result the box didn't checked

driver.execute_script("document.getElementById('recaptcha-token').value='{}';".format(response))
but i find
when i click manually the checbox appear this

.

I don't know more
pls help me

Can't submit solution when recaptcha has no submit button

I am struggling with the realtor.com recaptcha.

I am using selenium and would like to run headless, but I can't, because I can't get the recaptcha to submit.

I have followed your example and everything works great, up until the point that I must submit the captcha. It is one of those ones where you can only click the verify button after selecting all of the photos.

How might I submit my recaptcha to be validated once I have populated the textarea with the job.get_solutions_response() ??

Thanks

SSLError: HTTPSConnectionPool(host='api.anti-captcha.com', port=443)

After using Anticaptcha services for some time, I got the following error:


  task 21 failed - "SSLError: HTTPSConnectionPool(host='api.anti-captcha.com', port=443): Max retries exceeded with url: /getTaskResult (Caused by SSLError(SSLError("bad handshake: SysCallError(-1, 'Unexpected EOF')",),))

Detailed traceback: 
  File "C:\Users\msagovac\AppData\Local\CONTIN~2\ANACON~1\lib\site-packages\python_anticaptcha\base.py", line 39, in join
    while not self.check_is_ready():
  File "C:\Users\msagovac\AppData\Local\CONTIN~2\ANACON~1\lib\site-packages\python_anticaptcha\base.py", line 24, in check_is_ready
    self._update()
  File "C:\Users\msagovac\AppData\Local\CONTIN~2\ANACON~1\lib\site-packages\python_anticaptcha\base.py", line 21, in _update
    self._last_result = self.client.getTaskResult(self.task_id)
  File "C:\Users\msagovac\AppData\Local\CONTIN~2\ANACON~1\lib\site-packages\python_anticaptcha\base.py", line 89, in getTaskResult
    response = self.session.post(urljoin(self.base_url, self.TASK_RESULT_URL), json=request).json()
  File "C:\Users\m

Do you know what could be a problem?

ERROR_INCORRECT_SESSION_DATA even though its correct!

Hello mate!

I have been trying to copy paste the code that you have made

from python_anticaptcha import AnticaptchaClient, NoCaptchaTaskProxylessTask

api_key = '' <--- My own API
site_key = '6Le-wvkSAAAAAPBMRTvw0Q4Muexq9bi0DJwx_mJ-'  # grab from site
url = 'https://www.google.com/recaptcha/api2/demo'

client = AnticaptchaClient(api_key)
task = NoCaptchaTaskProxylessTask(url, site_key)
job = client.createTask(task)
job.join()
print job.get_solution_response()

However whenever site I try if its google, test page or whatever site that has Captcha (With the correct site key aswell) it gives you a error of :
python_anticaptcha.exceptions.AnticatpchaException: [ERROR_INCORRECT_SESSION_DATA:24]Some of the required values for successive user emulation are missing.. Website stoken is invalid. Expected string value, received array

I tried to change API, tried to change site, even tried other anti-services such as 2cap and dbd and worked fine. I assume there might be a issue when it comes to^

job = client.createTask(task)^

I tried to print anything before that code and after and it gets error on that row code.

Maybe its something you can look it up?

Sorry for my bad english btw, Hopefully its not only me!

`
    client = AnticaptchaClient(anticapAPI)
    task = NoCaptchaTaskProxylessTask(URL, Key_Found)
    log("Test")
    job = client.createTask(task)
    log("Test2")
    job.join()
    # print(anti_token)
    anti_token = job.get_solution_response()

    print(anti_token)
`

I even tried your own example and it gives the same error!

Google reCaptcha Unsuccessful

Hello, first of all, thank you for your great work here!

Okay, so I'm creating a account sign up bot using python, and everything work just fine but when I submit the captcha, it return "Verification unsuccessful. Please try again."

I tried many way but still cannot figure it out why is this happening. Can you point me out where my mistake? Thank you so much.
Here is the callback script of the site for submitting captcha since it doesnt have the submit button.

function attachChoiceHandlers(markupId, callbackScript) {
 var inputNodes = wicketGet(markupId).getElementsByTagName('input');
 for (var i = 0 ; i < inputNodes.length ; i ++) {
 var inputNode = inputNodes[i];
 if (!inputNode.type) continue;
 if (!(inputNode.className.indexOf('wicket-'+markupId)>=0)&&!(inputNode.id.indexOf(markupId+'-')>=0)) continue;
 var inputType = inputNode.type.toLowerCase();
 if (inputType == 'checkbox' || inputType == 'radio') {
 Wicket.Event.add(inputNode, 'click', callbackScript);
 }
 }
}

This is the reCaptcha element:

<textarea id="g-recaptcha-response-1" name="g-recaptcha-response" class="g-recaptcha-response" style="width: 250px; height: 40px; border: 1px solid rgb(193, 193, 193); margin: 10px 25px; padding: 0px; resize: none; display: none;"></textarea>`

My code for captcha handle:

site_key = self.driver.find_element_by_id("g-recaptcha-panel").get_attribute("data-sitekey")
cap_url = self.driver.find_elements_by_tag_name("iframe")[0].get_attribute("src")
client = AnticaptchaClient(self.ac_token)
task = NoCaptchaTaskProxylessTask(cap_url, site_key)
job = client.createTask(task)
print("Submitting Captcha")
job.join()
response = job.get_solution_response()
print("Submited Captcha", response)
wait(0.5)
self.driver.execute_script('document.getElementById("g-recaptcha-response").innerHTML = "%s"' % response)
wait(2)
self.driver.execute_script("x = document.getElementsByTagName('input')[0];"
                           "x.click();")
wait(3)    
self.driver.find_element_by_class_name("InputSubmit").click()

TypeError: Object of type 'WebDriver' is not JSON serializable

I am not sure how can I combine you reCaptcha solver and selenium session. Fro example simple selenium code:

from selenium import webdriver
driver = webdriver.Chrome()
driver.get('http://www.hzzo-net.hr/statos_OIB.htm')
driver.find_element_by_id('upoib').send_keys('93335620125')

Now, I would like to execute reCaptcha part, but not sure how to do it. Itried for example:

api_key = xxxxx'
site_key = '6Lc3SAgUAAAAALFnYxUbXlcJ8I9grvAPC6LFTKQs'  # grab from site

client = AnticaptchaClient(api_key)
task = NoCaptchaTaskProxylessTask(driver, site_key)
job = client.createTask(task)
job.join()
print(job.get_solution_response())

But it returns an error in the title.
Not sure how to pass selenium session as input?

Integrating selenium/not submitting form?

I am using Selenium/Python to try and fill out a form and than fill out the recaptcha. I found python-anticaptcha and bought $10 in credits, and everything is working, the captcha comes up, but than nothing happens. I tried to look for answers for a few hours/consulted their api and examples, but could not find anything. Ultimately, the captcha should work and then the website would generate a table which I am trying to web-scrape

This is what it ends up looking like, but nothing happens and after a minute or so it usually quits, this is the code
screen shot 2018-06-26 at 3 36 27 pm

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from bs4 import BeautifulSoup
from python_anticaptcha import AnticaptchaClient, NoCaptchaTaskProxylessTask
import re
import pandas as pd
import os
import time
import requests

url = "https://claimittexas.org/app/claim-search"
driver = webdriver.Safari()
driver.implicitly_wait(30)
driver.get(url)

wait = WebDriverWait(driver, 30)
result = driver.find_element_by_xpath('//*[@id="lastName"]')
driver.execute_script("arguments[0].value='Al';",result)
time.sleep(2)
result.submit()

api_key = '**REDACTED BY @ad-m**'
site_key = '6LeQLyEUAAAAAKTwLC-xVC0wGDFIqPg1q3Ofam5M'  # grab from site

time.sleep(2)
client = AnticaptchaClient(api_key)
task = NoCaptchaTaskProxylessTask(url, site_key)
job = client.createTask(task)
job.join()
token = job.get_solution_response()
requests.post(url, data={'g-recaptcha-response': token}).text

Creating an ImageToTextTask with from a string containing base64 data

Hi, given a string encoding a png image in base64 (example given below), what is the most straightforward way to create the corresponding ImageToTextTask?

For a quick check, there exists many website which render base64 data, for instance: https://codebeautify.org/base64-to-image-converter# just copy-paste everything in between the "quotes" ;-)

"data:image/png;base64,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"

Extract sitekey with python using re.search

@ad-m
Hi Adam, you already helped me a lot integrating your python code to use with selenium/chrome.

Now I do have another recaptcha, where I am not able to handle it.

First of all I am trying to extract sitekey. This was your code for the last recaptcha:

site_key = re.search("captchaSitekey = '(.+?)'",driver.page_source).group(1)

I dont understand how to use the re.search. It's really difficult for me to understand the syntax.
But I guess this time its more complicated, because the sitekey can not be found in the page_source.
Take a look here:

grafik

It seems like "sitekey" is inside of a javascript function.
I hope you will help me again.

python-anticaptcha is in an unsupported or invalid wheel

While using pip3 - I get the following error with the latest version of python-anticaptcha 0.4.1 on Ubuntu 16.04

You are using pip version 8.1.1, however version 19.2.3 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
The command '/bin/sh -c /usr/bin/pip3 install python-anticaptcha==0.4.1' returned a non-zero code: 1

You can reproduce this with docker using Dockerfile:

FROM ubuntu:16.04
WORKDIR .
USER root
RUN apt-get update -y

RUN apt-get install -y python python3-pip
RUN /usr/bin/pip3 install python-anticaptcha==0.4.1

I know I am using an older version of pip, but I am not willing to upgrade at the moment

Override Property

Is there a way to override/set upload properties? Like so:

  • "phrase":false,
  • "case":false,
  • "numeric":0,
  • "math":false,
  • "minLength":0,
  • "maxLength":0

Announcing Rewards for OSS Projects

Dear community! Thanks for your incredible support so far. With great OSS projects that use our library we want to announce a reward program and help spread our library!

What’s The Reward?

  • Each individual/project/group of people will be eligible for a total of $100 (USD) reward for integrating a project with our library. Bitcoin is the preferred form of funds transfer.

How Do I get rewarded?

You will need to integrate python-anticaptcha with a popular OSS project that have more than > 200 stars on GitHub.

Project submissions below star limit may be considered individually, taking into account the project's grow, with the right to reject the application until the required number of stars is obtained by the project.

The main purpose of the criterion is to eliminate projects that have a very, very small group of recipients and do not have the potential for the number of recipients to ever increase.

An eligible integration must include the following:

  • At least one captcha task from our library used in the project.
  • the integration should be merged to the upstream repository and not an outside repo (please contact me if you develop an integration as an external plug-in, because such integrations can be awarded on individual term)
  • our library constant SOFT_ID cannot be modified
  • user documentation should be provided to facilitate the use of the new functionality with our library

Setting a timeout

Hi!
I was testing some code that uses this library and sometimes the task never get completed, so the code get stuck on that point without returning any error. Is there a way to set a timeout to the task on your code?
I don't need you to implement this, but I would like to know how to do it myself, since (at least for me) it's not clear how to do it.
Thanks :)

Submit form with selenium

@ad-m
I use selenium with chromedriver.
I would like to login here: https://listen.tidal.com/login

Actually I get a resolve token from the anti-captcha service and I can insert it into the website, but I can´t submit the form.

def loginTidal(driver, counter):
    global accounts
    tempDetails = accounts[counter].split(':')
    # driver.get("http://tidal.com/login")
    driver.get("https://tidal.com/")
    driver.implicitly_wait(5)
    driver.find_element_by_class_name(
        "btn-link.btn-medium.font-weight-normal.hidden-sm-max"
    ).click()
    time.sleep(2)
    WebDriverWait(driver, 120).until(
        EC.presence_of_element_located(
            (By.CLASS_NAME, "form-input.client-input"))).send_keys(tempDetails[0])
    time.sleep(3)
    url=driver.current_url
    client = AnticaptchaClient(api_key)
    task = NoCaptchaTaskProxylessTask(url, site_key)
    job = client.createTask(task)
    job.join()
    response = job.get_solution_response()
    print("Received solution", response)
    driver.execute_script("document.getElementById('g-recaptcha-response').innerHTML='{}';".format(response))

    time.sleep(2)
    driver.find_element_by_xpath("/html/body/div[1]/div[2]/div[3]/div/div/div/div[1]/div[1]/div/form").submit()
    time.sleep(2)
    password=WebDriverWait(driver, 120).until(
        EC.presence_of_element_located(
            (By.ID, "password"))).send_keys(tempDetails[1])
    WebDriverWait(driver, 120).until(
        EC.presence_of_element_located(
            (By.CLASS_NAME, "position-relative.fullwidth.margin-bottom-1.btn-success.btn-client-primary"))).click()

The problem is that a image challenge occur after I inserted an email in the form.
Do you have an idea to solve my problem?

explanation about solve text captcha

First of all thank you very much for sharing your code!
I have few questions about how to use your text captcha solver, your example is :
"from python_anticaptcha import AnticaptchaClient, ImageToTextTask
api_key = '174faff8fbc769e94a5862391ecfd010'
captcha_fp = open('examples/captcha_ms.jpeg', 'rb')
client = AnticaptchaClient(api_key)
task = ImageToTextTask(captcha_fp)
job = client.createTask(task)
job.join()
print job.get_captcha_text()"

  1. what should I write in api_key? is it gonna be like the example exactly?
  2. what should I write in the open() command , what is this 'example', should I download the photo of the text to solve it?
  3. is the printing statement would print eventually the text that written in the image?

thanks in advance!

onSuccess is not defined

I try to use this library on https://nakedcph.com, when script tries to send solved captcha i get this error: "selenium.common.exceptions.JavascriptException: Message: javascript error: onSuccess is not defined", what is onSuccess on this site then, and how to find it?

Dealing with funcaptcha rotating captcha, there is no submit button

@ad-m
Hello, As i mentioned in the title, there is no submit button.
Maybe there is but i cannot find it.
website: twitch.tv/signup
twitchtv is using Funcaptcha and i have set the FunCaptcha-Token + verification-Token values successfully, however there is nothing happened after i set those values.
i have checked the example, " funcaptcha_selenium.py "
there is a submit button on "https://client-demo.arkoselabs.com/solo-animals"
however, twitchtv doesnt have one. Please help , thanks love you <3

Small question

The recaptcha proxyless methods are returning an "answer hash". My question is, what do I do with the answer hash for the captcha to be solved on the site? Do I make a request to Google's servers or something of the sort? (Thanks for the help in advance)

Unable to submit new captcha token

Good day, I have the following script written and everything seems to work okay up until it needs to submit the new captcha token where it fails to find the element. I've tried several ways but cannot seem to find the correct. I would be ever so grateful if someone could kindly help me. Here is the code:

import time
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from python_anticaptcha import AnticaptchaClient, NoCaptchaTaskProxylessTask

def get_solution(current_url):
    api_key = 'REDACTED'
    site_key = '6LeJGvwUAAAAACRrkKN1AmgqHPxLNh1YMGraggyA'
    client = AnticaptchaClient(api_key)
    task = NoCaptchaTaskProxylessTask(current_url, site_key)
    job = client.createTask(task)
    print("Waiting for solution by Anticaptcha workers") 
    job.join()
    response = job.get_solution_response()
    print("Received solution", response)
    return response

def checkout_settings():
    options = webdriver.ChromeOptions()
    options.add_argument("--window-size=1920,1080")
    options.add_argument("--start-maximized")
    options.add_argument('disable-gpu')
    driver = webdriver.Chrome(executable_path='C:\\Users\\REDACTED\\Desktop\\Discord\\chromedriver', options=options)
    return driver

def auto_login():
    driver = checkout_settings()
    driver.get('REDACTED')
    time.sleep(5)
    WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH,'//*[@id="signIn"]'))).click()
    WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH,'//*[@id="user"]'))).send_keys('email')
    WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH,'//*[@id="pass"]'))).send_keys('pass')
    WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH,'//*[@id="loginLink"]'))).click()
    time.sleep(5)
    response = get_solution(driver.current_url)
    time.sleep(5)
    driver.execute_script('document.getElementById("g-recaptcha-response").innerHTML = "%s"' % response)
    time.sleep(5)
    driver.find_element_by_xpath('//*[@id="recaptcha-verify-button"]').submit() ##<-- ISSUE
    time.sleep(5)
    driver.quit()

if __name__ == '__main__':
    auto_login()

UPDATE:
After reading #77 I even tried changing the 2 lines to this:

    driver.execute_script("document.getElementById('g-recaptcha-response').innerHTML='{}';".format(response))
    time.sleep(5)
    driver.execute_script("grecaptcha.recaptchaCallback[0]('{}')".format(response))

Sadly still no luck, I'm guessing I somehow need to interact with the callback but unsure how. Here is the error I received:

    raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.JavascriptException: Message: javascript error: Cannot read property '0' of undefined
  (Session info: chrome=85.0.4183.102)

UPDATE2:
Just to clarify in case someone does get chance to look at this and wants to replicate. The recaptcha happens for me when you login (you can have a free account) and only when using this automation.

API_KEY

how can i get the API_KEY? please help me

Newest release breaks shell imports

Hello! It looks like the newest python-anticaptcha release breaks upon importing into a Python shell. I can confirm this for Python 2.7 (yes, hilariously past end-of-life).

$ mkvirtualenv anticaptcha

(anticaptcha) $ pip install python-anticaptcha
DEPRECATION: Python 2.7 reached the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 is no longer maintained. A future version of pip will drop support for Python 2.7. More details about Python 2 support in pip, can be found at https://pip.pypa.io/en/latest/development/release-process/#python-2-support
Collecting python-anticaptcha
  Using cached python_anticaptcha-0.5.0-py2.py3-none-any.whl (4.6 kB)
Collecting six
  Using cached six-1.14.0-py2.py3-none-any.whl (10 kB)
Collecting requests
  Using cached requests-2.23.0-py2.py3-none-any.whl (58 kB)
Collecting certifi>=2017.4.17
  Downloading certifi-2019.11.28-py2.py3-none-any.whl (156 kB)
     |████████████████████████████████| 156 kB 2.5 MB/s
Collecting urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1
  Using cached urllib3-1.25.8-py2.py3-none-any.whl (125 kB)
Collecting idna<3,>=2.5
  Downloading idna-2.9-py2.py3-none-any.whl (58 kB)
     |████████████████████████████████| 58 kB 6.9 MB/s
Collecting chardet<4,>=3.0.2
  Downloading chardet-3.0.4-py2.py3-none-any.whl (133 kB)
     |████████████████████████████████| 133 kB 11.2 MB/s
Installing collected packages: six, certifi, urllib3, idna, chardet, requests, python-anticaptcha
Successfully installed certifi-2019.11.28 chardet-3.0.4 idna-2.9 python-anticaptcha-0.5.0 requests-2.23.0 six-1.14.0 urllib3-1.25.8

(anticaptcha) $ python
Python 2.7.16 (default, Mar  4 2019, 09:02:22)
[GCC 4.2.1 Compatible Apple LLVM 10.0.0 (clang-1000.11.45.5)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import python_anticaptcha
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named python_anticaptcha
>>> quit()

(anticaptcha) $ pip install python-anticaptcha==0.4.2
DEPRECATION: Python 2.7 reached the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 is no longer maintained. A future version of pip will drop support for Python 2.7. More details about Python 2 support in pip, can be found at https://pip.pypa.io/en/latest/development/release-process/#python-2-support
Collecting python-anticaptcha==0.4.2
  Using cached python_anticaptcha-0.4.2-py2.py3-none-any.whl (10 kB)
Requirement already satisfied: six in /Users/davidranshous/.virtualenvs/anticaptcha/lib/python2.7/site-packages (from python-anticaptcha==0.4.2) (1.14.0)
Requirement already satisfied: requests in /Users/davidranshous/.virtualenvs/anticaptcha/lib/python2.7/site-packages (from python-anticaptcha==0.4.2) (2.23.0)
Requirement already satisfied: certifi>=2017.4.17 in /Users/davidranshous/.virtualenvs/anticaptcha/lib/python2.7/site-packages (from requests->python-anticaptcha==0.4.2) (2019.11.28)
Requirement already satisfied: urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1 in /Users/davidranshous/.virtualenvs/anticaptcha/lib/python2.7/site-packages (from requests->python-anticaptcha==0.4.2) (1.25.8)
Requirement already satisfied: idna<3,>=2.5 in /Users/davidranshous/.virtualenvs/anticaptcha/lib/python2.7/site-packages (from requests->python-anticaptcha==0.4.2) (2.9)
Requirement already satisfied: chardet<4,>=3.0.2 in /Users/davidranshous/.virtualenvs/anticaptcha/lib/python2.7/site-packages (from requests->python-anticaptcha==0.4.2) (3.0.4)
Installing collected packages: python-anticaptcha
  Attempting uninstall: python-anticaptcha
    Found existing installation: python-anticaptcha 0.5.0
    Uninstalling python-anticaptcha-0.5.0:
      Successfully uninstalled python-anticaptcha-0.5.0
Successfully installed python-anticaptcha-0.4.2

(anticaptcha) $ python
Python 2.7.16 (default, Mar  4 2019, 09:02:22)
[GCC 4.2.1 Compatible Apple LLVM 10.0.0 (clang-1000.11.45.5)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import python_anticaptcha
>>>

My team noticed this happening this morning after the release of version 0.5.0. Pinning to v0.4.2 works fine.

recapcha doesn't vanish after injecting the gresponse using python and selenium

To get a clear view i am uploading a link to a video which shows the problem regarding the recapcha.
https://drive.google.com/file/d/1Ydsra33hqyb5hRpmekOjk-y_uUw_UL95/view?usp=sharing

I am running a pythn bot to scrape the answers but get this recapcha sometimes.
11

I use anticapcha service to get the token and use code to inject the response :
driver.execute_script("document.getElementById('g-recaptcha-response').innerHTML='{}';".format(token))

but the recapcha doesnt dissapear as it DOESN'T have a submit button.
The recapcha dissapears only after solving it and goes to the login page. The video will give a clear view of the problem.

What is the procedure to do after injecting g response?

How to submit the g response in wish.com login page

I am getting a valid response from anticaptcha but not able to submit the same in formsubmit in wish.com. I am using selenium and firefox as browser. The captcha appears after submitting login information.

Managing a proxy server

Google accepts IP address mismatch. However, in the future this can be changed.

Anticaptcha supports the connection of workers via a proxy. The library could be responsible for launching a local proxy server for this purpose.

When needed, this will be implemented. Please signal if I missed the change.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.