代码之家  ›  专栏  ›  技术社区  ›  ikel

在响应表单中的javascript中找到一些值

  •  2
  • ikel  · 技术社区  · 7 年前

    www.example.com/test 因此,通过使用robobrowsker访问这个url,我找到了一些js作为响应,其中包含如下内容

    var token = _.unescape("<input name="__RequestVerificationToken" type="hidden" value="wi5U8xXijdXRrPR4aG84OAjSLsuS1YqTV4X7VLDnWeuwr72D39H-KXBsyG7eZEZPT7YXW7GF26IiQBrW0vcEZd5Bqrjof_CVEUFRTDPS4rx68Opmi6juZXnGDEtb9nsBXxM4Why2WNlflqFM6purXw2" />");
        aw.antiforgeryToken[$(token).attr('name')] = $(token).val();
    

    wi5U8xXijdXRrPR4aG84OAjSLsuS1YqTV4X7VLDnWeuwr72D39H-KXBsyG7eZEZPT7YXW7GF26IiQBrW0vcEZd5Bqrjof_CVEUFRTDPS4rx68Opmi6juZXnGDEtb9nsBXxM4Why2WNlflqFM6purXw2

    browser=RoboBrowser()
    browser.open('https://www.example.com/test')
    result=browser.find('script',{'name':'__RequestVerificationToken'})
    

    这会导致“无”

    谢谢

    1 回复  |  直到 7 年前
        1
  •  0
  •   P.hunter    7 年前

    br.find 可以在html上工作,因为你想要的东西在JS调用中,所以我们不能使用它。

    1. 'wi5U8xXijdXRrPR4aG84OAjSLsuS1YqTV4X7VLDnWeuwr72D39H-KXBsyG7eZEZPT7YXW7GF26IiQBrW0vcEZd5Bqrjof_CVEUFRTDPS4rx68Opmi6juZXnGDEtb9nsBXxM4Why2WNlflqFM6purXw2' 通过正则表达式

    2. lxml。html(xpath)
      lxml.html import html from lxml 同一件事

    这里是它的一点表示。

    data = lmxl.html(parsedData)
    stuff = data.xpath('XPATH to you data')
    

    你可以在这里找到更多 Can I parse xpath using python, selenium and lxml? docs