Javascript 如何使用靓汤在<;脚本>;标签?
在给定的.html页面中,我有一个脚本标记,如下所示:Javascript 如何使用靓汤在<;脚本>;标签?,javascript,html,beautifulsoup,Javascript,Html,Beautifulsoup,在给定的.html页面中,我有一个脚本标记,如下所示: <script> function loadDoc() { var xhttp = new XMLHttpRequest(); xhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { document.getElementById("demo").innerHTM
<script>
function loadDoc() {
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
document.getElementById("demo").innerHTML =
this.responseText;
}
};
xhttp.open("GET", "ajax_info.txt", true);
xhttp.send();
}
</script>
函数loadDoc(){
var xhttp=newXMLHttpRequest();
xhttp.onreadystatechange=函数(){
if(this.readyState==4&&this.status==200){
document.getElementById(“demo”).innerHTML=
这个.responseText;
}
};
open(“GET”,“ajax\u info.txt”,true);
xhttp.send();
}
如何使用Beauty Soup获取.open函数中的第二个参数
本例为“ajax_info.txt”
BeautifulSoup不是为此而构建的。它是为解析html而构建的,而不是JavaScript或任何其他web语言 更简单的方法是使用诸如或之类的 还可以使用或不使用正则表达式解析JavaScript,如中所述
编辑: 示例: 我不知道如何使用无头浏览器,尽管这可能是最好的方法,但是我知道足够多的正则表达式来创建一个快速而肮脏的示例,该示例适用于上面列出的示例
b=“”函数loadDoc(){
var xhttp=newXMLHttpRequest();
xhttp.onreadystatechange=函数(){
if(this.readyState==4&&this.status==200){
document.getElementById(“demo”).innerHTML=
这个.responseText;
}
};
open(“GET”,“ajax\u info.txt”,true);
xhttp.send();
}"""
#在使用BeautifulSoup和存储在“b”中之间获取值
进口稀土
a=re.compile(“'GET',“[\S]+”)
c=a.search(b).group()
打印(c[8:-1])
@baroad我举了一个例子。正如我上面所说的,它需要改进,但它为您提供了一个如何实现它的好主意(而且它是有效的)。如果您打算定期/使用非常大的JavaScript脚本,我强烈建议您学习无头浏览器,这将容易得多。
b = """function loadDoc() {
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
document.getElementById("demo").innerHTML =
this.responseText;
}
};
xhttp.open("GET", "ajax_info.txt", true);
xhttp.send();
}"""
# Get value between <script></script> using BeautifulSoup and store in "b"
import re
a = re.compile('"GET", "[\S ]+"')
c = a.search(b).group()
print(c[8:-1])