【问题标题】:Python: Setting JavaScript Variables With Beautifulsoup?Python:使用 Beautifulsoup 设置 JavaScript 变量?
【发布时间】:2021-03-05 12:53:00
【问题描述】:

我在网上看到的大部分相关问题都与从解析页面访问 JS 变量有关。我想走另一条路,因为我有一个 HTML 页面,它是由 beautifulsoup 用 python 打印的。很简单的东西,除了页面包含一堆动态 JavaScript(GUI 东西),我不知道如何在渲染时预填充而不会让事情变得混乱。

澄清一下:该页面是由在服务器上运行的 python 脚本呈现的。 python 脚本检索一堆市场数据,它切片/切块,然后应该在我的 HTML 页面中填充各种 JS 变量。再一次,静态 HTML 相当简单,我以前也这样做过。但是填充 JS 变量和数组可能会很棘手。仅供参考 - 这是一个单页,因此不值得设置 Flask 或 Django。

最后,我想知道跳过beautifulsoup并简单地解析静态HTML文件并预填充占位符字符串是否更容易。

感谢任何指示、见解,甚至更好:示例​​ ;-)

【问题讨论】:

    标签: javascript python beautifulsoup


    【解决方案1】:

    如果我理解正确,您可以尝试在 beautifulsoup 的帮助下在 html 文件的末尾创建一个脚本标签。在这个脚本标签中,你可以像这样设置变量。

    your_soup 是页面的汤元素

    from bs4 import BeautifulSoup
    
    variable = "Example"
    temp_soup = BeautifulSoup('<script>var yourvariable = ' + variable + '</script>')
    script_tag = temp_soup.html.body.script
    your_soup.body.insert(len(your_soup.body.contents), script_tag)
    

    我希望它有效。

    【讨论】:

    • 是的,也许我想多了。我还想知道是否更容易阅读整个 HTML 文件(包括脚本、CSS 标记等)并替换一堆占位符字符串。我确定那里有一个 python 库。
    猜你喜欢
    • 2017-09-07
    • 1970-01-01
    • 2020-02-10
    • 2011-08-22
    • 2013-08-07
    • 2018-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多