所以我正在尝试使用selenium从网站上抓取数据,因为我对selenium和web抓取还很陌生。我想抓取<script type>
标签下的一些数据,标签看起来像这样:
...
...
<script type="text/javascript">
var myData_1 = {"name" : ..... };
var myData_2 = {......};
var myData_id = 4565843;
var myData_mapping = {.....};
</script>
...
...
所以我需要抓取这个脚本标记中的数据,即所有var数据值。到目前为止,我只记下了这么多:
from selenium import webdriver
import pandas as pd
driver = webdriver.Chrome('/home/slothfulwave612/chromedriver_linux64/chromedriver')
driver.get('https://www.example.com') ## not the actual site
html = driver.page_source
print(html)
driver.close()
这只是打印网站的源代码,我应该在这里添加什么,这样我就可以从<script type
标签中抓取数据。有人能帮忙吗?
使用方法.find_element_by_xpath()
(docs(
script_label = driver.find_element_by_xpath("//script[@type = 'text/javascript']")
然后你可以刮去内部元素。
如果要打印脚本标记的所有内容,请使用innerHTML属性进行打印。
ele = driver.find_element_by_xpath("//script[@type = 'text/javascript']")
print(ele.get_attribute("innerHTML"))
输出:
var myData_1={"名称":…..};
var myData_2={……};
var myData_id=4565843;
var myData_mapping={…..};