我的Python脚本出现问题。我想要做的就是使用id值:value解析div元素并存储所有更改的值。此元素的值由javascript生成。这意味着元素的值取决于用户的输入。更具体地说,html元素看起来像
<div id="value">...Here the frequently changed value generated by javascript...</div>
我的python脚本如下:
from bs4 import BeautifulSoup
import urllib
x=urllib.urlopen("http://example.com")
s = x.read()
soup = BeautifulSoup(s)
m = soup.find("div",{"id":"value"})
val = m.text
print val
结果是无,但在网页上的更改很明显!请帮我搞清楚。
答案 0 :(得分:0)
如果该值是由javascript生成的 - 最简单的解决方案是利用真实的浏览器来抓取网页。这是selenium有用的地方。这是一个简单的例子:
from selenium import webdriver
browser = webdriver.Firefox()
browser.get('http://example.com')
element = browser.find_element_by_id('value')
print element.text