I am making GUI application by Python, using PyQt4 and spynner. I have function:
def find_me(self, url, name=None, code=None):
b = spynner.Browser()
if name != None and code != None:
b.create_webview()
b.load(url)
b.wk_fill('input[name="ctl00$cphBody$tbOrgName"]', name)
b.wk_fill('input[name="ctl00$cphBody$OrganizationCode1$CodeTextBox"]', code)
b.click('#ctl00_cphBody_btnSearch')
b._wait_load()
source = b.html
b.destroy_webview()
b.close()
else:
b.create_webview()
b.load(url)
source = b.html
b.destroy_webview()
b.close()
return source
This function doing some moves on site and returning to me html code of page. I have main function named "downloader":
def downloader(self):
downloads_list = []
uniq = []
j = 0
for name, code, checkstate in self.input_data:
try:
if checkstate == 0:
source = self.find_me("http://bankrot.fedresurs.ru/DebtorsSearch.aspx", name, code)
root = XpathSelector(fromstring(source))
else:
new_name = name.split(" ")
source = self.find_me2("http://bankrot.fedresurs.ru/DebtorsSearch.aspx", new_name[0], new_name[1], new_name[2], code)
root = XpathSelector(fromstring(source))
......
self.progress_bar.setValue(((j+1)*100)/len(self.input_data)) #setting value to progress bar
j += 1
And i have third function that calling "downloader":
def print_keys(self):
.................
self.downloader()
This function connected to button:
self.start_button.clicked.connect(self.print_keys)
After this string in "downloader":
self.progress_bar.setValue(((j+1)*100)/len(self.input_data))
I have "Python.exe" appcrash. Reason : QtCore4.dll.
What i am doing wrong?Help me please.
Soved my problem by replacing spynner for Selenium+PhantomJS