我正在尝试编写一个脚本,以便我可以登录到一个网站,但为了做到这一点,我需要出示验证码。从 URL 中获取验证码直接图像的唯一方法是提取巨大的字符串名称“challenge”,但由于某种原因我无法使用 BeautifulSoup 做到这一点。提取长字符串的最佳方法是什么?
var RecaptchaState = {
site : '4LfjPgEA56AABAJExraAeYXdMbVhPcG__Hyv-URXF',
challenge : '03AHJ_VusE_PgNB0vfBpD2h53o8uGMt1MeKi9bzhOTsjt0ze7SKmHVNe8uADceoU3JLPjpp8cJCVDGiYKo1ho-r1JcV19tm26doUHqevixJjH8SZ26i4EWbUOQLEuODf0Kt6JI0ZhtfiIaIXDg9MhUyDCEt_qxFWbSHA',
is_incorrect : false,
programming_error : '',
error_message : '',
server : 'http://www.google.com/recaptcha/api/',
timeout : 18000
};
document.write('
<scr>
');
</scr>
请您参考如下方法:
我只会使用正则表达式。对此不确定,但我不认为 beautifulsoup 解析 javascript——仅 (x)html:
challenge = re.search(r"challenge *: *'(\S+)'", x).group(1)
给予:
'03AHJ_VusE_PgNB0vfBpD2h53o8uGMt1MeKi9bzhOTsjt0ze7SKmHVNe8uADceoU3JLPjpp8cJCVDGiYKo1ho-r1JcV19tm26doUHqevixJjH8SZ26i4EWbUOQLEuODf0Dt6JI0ZWgtCEhtfiIXIa哈'
