Есть ли способ удалить остатки Ghost.py после того, как я закончил использовать его?
Я использую пакет ghost в своем скрипте для очистки сайта. Так как у меня есть много страниц для чистки, призрак используется много раз, около 30 раз на страницу, и у меня может быть сотни страниц для чистки. При запуске скрипта я заметил, что примерно после 25 страниц я начинаю получать ошибки Ghost::Qt::Qthread, и даже до этого кажется, что ghost не соответствует значению: в основном ghost используется для извлечения номера телефона из простого страница выглядит так:
Я подозреваю, что речь идет о перегрузке памяти или о чем-то подобном, но я должен признать, что я новичок в Python и не достаточно опытен в программировании (я из аппаратного мира).
Кто-нибудь сталкивался с такими проблемами? Я знаю, что у ghost есть метод с именем remove_page, который должен удалить созданную "страницу", но я попытался использовать ее, и я думаю, что она не работает (или я что-то упустил), вот код, в котором я пытаюсь использовать это удаление и после удаления Я все еще могу использовать объект:
from ghost import Ghost
gh=Ghost()
page, page_name = gh.create_page()
gh.remove_page(page)
После запуска этого и ввода page
Я ожидаю, что не будет определена ни одна страница. Как освободить ресурсы, удалить страницу, даже удалить gh
объект создан?
1 ответ
Текущая версия Ghost.py (0.2.3) должна это исправить. Однако версии после 0.1.2 имеют некоторые ошибки при загрузке определенных веб-сайтов. Запуск кода Ghost.py в своем собственном процессе исправит следующие проблемы с памятью в старой версии:
from multiprocessing import Process
from ghost import Ghost
def load_page(url):
gh = Ghost()
page, page_name = gh.open(url)
p = multiprocessing.Process(target=load_page, args=(url))
p.start()
p.join
Если вам необходимо получить данные обратно из процесса, вам придется изучить использование многопроцессорной очереди.