Io stesso uso questo: (Ho scritto è veloce come era solo per uso personale). Con un sacco di pulizia potresti essere in grado di ottenere quello che vuoi. Vedere https://developers.google.com/chrome-developer-tools/docs/remote-debugging
import urllib2
import urllib
import os
import subprocess
import json
from websocket import create_connection
def refresh_page(url):
data = json.load(urllib2.urlopen('http://localhost:9222/json'))
found_page = False
for page in data:
if page['url'].lower() == url.lower():
found_page = True
websocketURL = page['webSocketDebuggerUrl']
ws = create_connection(websocketURL)
obj = { "id": 0,
"method": "Page.reload",
"params":
{
"ignoreCache": True,
"scriptToEvaluateOnLoad": ""
}
}
dev_request = json.dumps(obj)
ws.send(dev_request)
result = ws.recv()
ws.close()
if not found_page:
raise Exception("No pageFound")
def open_or_refresh(file_name):
file_name = "".join ([f if f in r'\/:*?"<>|' else urllib.quote(f) for f in file_name])
file_name = 'file:///' + file_name.replace('\\', '/')
file_name = file_name.encode('ascii', 'ignore')
try:
refresh_page(file_name)
except:
cmd = (r'"%(LOCALAPPDATA)s\Google\Chrome\Application\chrome.exe"'%os.environ
+ r' --remote-debugging-port=9222 "%s"' % file_name)
subprocess.Popen(cmd)
open_or_refresh(r"C:\test.html")
open_or_refresh(r"C:\test.html")
fonte
2012-07-05 12:53:18
sto ottenendo questo errore: [http://pastie.org/4208613](http://pastie.org/4208613) – prongs
Non sono sicuro di quello che sta andando male forse un'altra domanda (Una sterlina sta andando in un barattolo, ma tutto quello che posso dire è che funziona per me.) –
Ho avuto lo stesso errore me stesso se avessi cambiato open_or_refresh (r "C: \ test.html") in 'open_or_refresh (u" C : \\ test.html ")' è necessario che la stringa sia in ascii. –