基本的に、ルーターの設定に入り、チェックボタンを設定し、ページ上の関数を
すべてプログラム
で呼び出したいと考えています。
これを行うためのすべてのJavaScriptを知っており
、Google Chromeコンソールから実行できます。
QWebKit を使用して構文的に実行できます
が、実際のページは影響を受けません。
import sys
from PyQt4 import QtCore, QtGui, QtWebKit
class Browser(QtWebKit.QWebView):
def __init__(self, parent = None):
super(Browser, self).__init__()
self.changepage()
def changepage(self):
self.load(QtCore.QUrl("http://192.168.0.1/adv_mac_filter.php"))
x1 = self.page().mainFrame()
x1.evaluateJavaScript("entry_enable_1.checked = true;")
x1.evaluateJavaScript("check();")
app = QtGui.QApplication(sys.argv)
x = Browser()
x.show()
sys.exit(app.exec_())
(はい、このコードを使用するには、ルーターの設定に既にログインしている必要があります)
アラートを使用してテストできるため、JavaScript が実行されていることがわかります。
ただし、ルーターの html "checked()" 関数またはチェックボックスは実行/変更されません。
私は実際にページを操作しているわけではなく、コピーのようです。
ここで私は大きな初歩的なミスを犯していますか?
仕様:
python 2.7
PyQt4
QWebKit
Windows 7