Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
需要将下面的selenium代码的输出放在Json文件中 需要解析输出数据并将其转储到json文件中。任何帮助都将不胜感激。_Json_Python 2.7_Selenium Chromedriver - Fatal编程技术网

需要将下面的selenium代码的输出放在Json文件中 需要解析输出数据并将其转储到json文件中。任何帮助都将不胜感激。

需要将下面的selenium代码的输出放在Json文件中 需要解析输出数据并将其转储到json文件中。任何帮助都将不胜感激。,json,python-2.7,selenium-chromedriver,Json,Python 2.7,Selenium Chromedriver,输出为: 应急响应通知系统(ERNS) 有关详细信息,请左键单击pin 事件:打电话的人说,一列向西行驶的货运列车撞上了轨道上的一名闯入者。 事件日期:2012年7月3日6:20 事件地点:MP:926.96 报告年度:2012年 城市:吉尔伯特 州:亚利桑那州 县:马里科帕 美国RCRA发电机(CESQG、SQG、LQG) 有关详细信息,请左键单击pin 信息网址: EPA标识符:110045500757 主要名称:CVS药房#3268 地址:林赛南路765号 城市:吉尔伯特 县:马里科帕

输出为: 应急响应通知系统(ERNS) 有关详细信息,请左键单击pin

事件:打电话的人说,一列向西行驶的货运列车撞上了轨道上的一名闯入者。 事件日期:2012年7月3日6:20 事件地点:MP:926.96 报告年度:2012年 城市:吉尔伯特 州:亚利桑那州 县:马里科帕


美国RCRA发电机(CESQG、SQG、LQG) 有关详细信息,请左键单击pin

信息网址: EPA标识符:110045500757 主要名称:CVS药房#3268 地址:林赛南路765号 城市:吉尔伯特 县:马里科帕 州:亚利桑那州 邮编:85296-3063 项目:蓝晶石、溴化钾、氯氟化钾 项目兴趣:危险废物双年展报告员,LQG,国家硕士 更新日期:2015年1月27日13:51:45 记录日期:2012年5月10日16:46:54


所需的json格式为: [ { “来源”:“应急响应通知系统(ERNS)”, “事件”:“打电话的人说,一列向西行驶的货运列车撞上了轨道上的侵入者。”, “事件日期”:“2012年3月7日6:20”, “事故地点”:“MP:926.96”, “报告年度”:“2012年”, “城市”:“吉尔伯特”, “州”:“AZ”, “县”:“马里科帕” }
]

我在python 3.5中运行了代码,因此将urllib2更改为urllib3。 下一个更改是在方法webdriver.chrome()中传递chrome驱动程序路径。 您可以从“”下载chrome diver

我找到了逻辑
需要像这样获取json输出,[{“来源”:“紧急响应通知系统(ERNS)”,“事件”:“来电者表示西行的货运列车撞上了轨道上的侵入者”,“事件日期”:“2012年3月7日6:20”,“事件地点”:“MP:926.96”,“报告年份”:“2012”,“城市”:“吉尔伯特”,State:“AZ”,“County:“MARICOPA”}]需要解析数据的帮助我正在获取数据,它是这样的:紧急响应通知系统(ERNS)左键单击pin获取更多信息。事件:打电话的人说,一列向西行驶的货运列车撞上了轨道上的一名闯入者。事件日期:2012年7月3日6:20事件地点:MP:926.96报告年份:2012年城市:吉尔伯特州:阿兹县:马里科帕*************************我一直在解析数据。您可以使用两种方法中的任何一种进行解析,重新模块或json模块。我想对于这种方法来说,re模块更好。
executable_path = "/usr/local/share/chromedriver"
chrome_options = Options()
os.environ["webdriver.chrome.driver"] = executable_path
driver = webdriver.Chrome(executable_path=executable_path, 
chrome_options=chrome_options)
driver.get("http://environment.netronline.com/api/viewers//env-
app.php?addr=gilbert")
time.sleep(5)
listOfElements = driver.find_elements_by_xpath("//div[@id='pinBox']//div[@class='pin']")
for element in listOfElements:
    hover = ActionChains(driver).move_to_element(element)
    hover.perform()
    time.sleep(5)
    targetTooltip = driver.find_elements_by_xpath("//*[@id='tooltip']")
    print targetTooltip.text
    print "**********************"
from selenium import webdriver
import os
import urllib3
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.support.ui import Select
import time

driver = webdriver.Chrome('C:\\Users\\raj.damani\\Downloads\\chromedriver.exe')
driver.get("http://environment.netronline.com/api/viewers//env-app.php?addr=gilbert#")
time.sleep(8)
listOfElements = driver.find_elements_by_xpath('//div[@id="pinBox"]//div[@class="pin"]')
for element in listOfElements:
    hover = ActionChains(driver).move_to_element(element)
    hover.perform()
    time.sleep(5)
    targetTooltip = driver.find_element_by_xpath('//*[@id="tooltip"]')
    print(targetTooltip.text)
    print("**********************")
driver.get("http://environment.netronline.com/api/viewers//env-app.php?addr=gilbert")
time.sleep(5)
listOfElements = driver.find_elements_by_xpath("//div[@id='pinBox']//div[@class='pin']")
for element in listOfElements:
    hover = ActionChains(driver).move_to_element(element)
    hover.perform()
    time.sleep(5)
    targetTooltip = driver.find_elements_by_xpath("//*[@id='tooltip']")
    for li in targetTooltip:
        lines = str(li.text)
        lines = str(lines).split('\n')
        lines.remove('Left click the pin for more info.')
        lines.remove('')
        lines.insert(0,'Environmental Concern')
        lines = [i.split(':', 1) for i in lines]
        flat_list = flatten(lines)
    r = dict(zip(flat_list[::2], flat_list[1::2]))
print json.dumps(r)