Некоторое время назад я написал скребок, использующий python, и он отлично работал в командной строке. Я сделал графический интерфейс для приложения сейчас, но у меня проблемы с одной проблемой. Когда я пытаюсь обновить текст внутри графического интерфейса (например, «извлечение URL 12/50»), я не вижу, как функция внутри скребка захватывает более 100 ссылок. Кроме того, при переходе от одной функции очистки к функции, которая должна обновлять графический интерфейс, к другой функции, функция обновления графического интерфейса, похоже, пропускается при выполнении следующей функции очистки. Примером может быть:
scrapeLinksA() #takes 20 seconds
updateInfo("LinksA done")
scrapeLinksB() #takes another 20 seconds
в приведенном выше примере updateInfo никогда не выполняется, если я не завершу программу с KeyboardInterrupt.
Я думаю, что мое решение является многопоточным, но я не уверен. Что я могу сделать, чтобы это исправить?
Я использую:
- PyQt4
- urllib2
- BeautifulSoup