Skip to main content
 首页 » 编程设计

javascript之如何使用 BeautifulSoup 从网页上的一些 JavaScript 中提取一长串文本

2025年05月04日24www_RR

我正在尝试编写一个脚本,以便我可以登录到一个网站,但为了做到这一点,我需要出示验证码。从 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哈'