从本地网站生成Google ReCaptcha

时间:2017-03-29 09:29:09

标签: javascript python http-post python-requests recaptcha

我正在使用python请求模块抓取网站。本网站上的表格需要解决ReCaptcha。我设法在本地网站上使用相同的站点密钥重新创建此ReCaptcha。如果我在我的本地网站上解决了ReCaptcha并获得了' g-captcha-response'键,我可以将此密钥发布到原始网站吗?如果是这样,这是否有效或Google是否需要除响应键之外的其他信息?

# I get the response key from my local website
CaptchaKey = response-key

# I post the response key on the original website
request.post(SubmitURL, data={'g-captcha-response': CaptchaKey}

这会有用吗?如果是,我该如何检查请求是否已成功发布?

1 个答案:

答案 0 :(得分:0)

谷歌验证码密钥还不够。您应该考虑使用selenium +请求的方法。

第一部分:

from selenium import webdriver

driver = webdriver.Chrome("C:\chromedriver.exe")
driver.get('desiredurl')
#somesleep/waittill element/anything to wait till you solve the recaptcha
cookies = driver.get_cookies()

第2部分

session = requests.Session()
for cookie in cookies:
    session.cookies.set(cookie['name'], cookie['value'])

payload = { 'username' : '',
            'password' : '',
            'g-captcha-response': CaptchaKey}


login = session.post('DESIREDURL', data = payload)

此方法应该有效