我编写了一个python(版本:3.4.3)脚本,其中我使用BeautifulSoup从html页面获取内容,在该页面中有一个段落标记,最初没有内容,但是我在窗口上添加了一个事件监听器,它将在该段落标记中添加一些内容。
Python script:
from bs4 import BeautifulSoup
import requests
import os
from urllib.parse import urljoin
def url():
res = requests.get('http://localhost:8000/a.html')
soup = BeautifulSoup(res.text);
print(soup.p.get_text());
Html file:
<!DOCTYPE html>
<html>
<body>
<p id="demo"></p>
<script>
var x = document.getElementById("demo");
function getLocation() {
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(showPosition);
} else {
x.innerHTML = "Geolocation is not supported by this browser.";
}
}
function showPosition(position) {
x.innerHTML = "It worked";
}
window.addEventListener('load',getLocation);
</script>
</body>
</html>
问题是python脚本的最后一行打印一个空行而不是数据 我在该段中动态添加的内容。
我认为问题出在addEventListener上,因为我实际上并没有打开页面。
有没有人可以提供另一种方法来从标签中获取内容,其中内容是通过一些javascript代码添加的(使用beautifulsoup)?