HTML PyQt4를 어떻게 다시 렌더링합니까?

단짝

웹 페이지에서 HTML을 렌더링 한 다음 원하는대로 텍스트를 구문 분석하고 찾고 사용하기 위해 제안 된 코드를 사용했습니다. PyQt4를 사용하고 있습니다. 하지만 관심있는 웹 페이지는 자주 업데이트되며 페이지를 다시 렌더링하고 업데이트 된 HTML에서 새로운 정보를 확인하고 싶습니다.

따라서 pythonscript에 루프가 있으므로 다시 시작합니다. 그러나 이로 인해 프로그램이 충돌합니다. 나는 인터넷을 검색하고 이것이 예상된다는 것을 알았지 만 올바르게 수행하는 방법에 대한 제안을 찾지 못했습니다. 간단해야 겠죠?

from PyQt4.QtGui import *

from PyQt4.QtCore import *

from PyQt4.QtWebKit import *


class Render (QWebPage):

    def __init__(self, url):
        self.app = QApplication(sys.argv)
        QWebPage.__init__(self)
        self.loadFinished.connect(self._loadFinished)
        self.mainFrame().load(QUrl(url))
        self.app.exec_()
    def _loadFinished(self, result):
        self.frame = self.mainFrame()
        self.app.quit()

r = Render(url)  

html = r.frame.toHtml()

S, o r=Render(url)두 번째로 치면 충돌합니다. S, o 같은 것을 찾고 r = Rerender(url)있습니다.

짐작할 수 있듯이, 저는 프로그래머가별로이며, 거의 이해하지 못하는 코드를 훔쳐가는 경우가 많습니다. 그런데 처음으로 답을 찾을 수 없어서 직접 질문 해야겠다고 생각했습니다.

내 질문이 충분히 명확하고 누군가가 답을 얻었기를 바랍니다.

에쿠 모로

간단한 데모 (맛에 맞게 조정) :

import sys, signal
from PyQt4 import QtCore, QtGui, QtWebKit

class WebPage(QtWebKit.QWebPage):
    def __init__(self, url):
        super(WebPage, self).__init__()
        self.url = url
        self.mainFrame().loadFinished.connect(self.handleLoadFinished)
        self.refresh()

    def refresh(self):
        self.mainFrame().load(QtCore.QUrl(self.url))

    def handleLoadFinished(self):
        print('Loaded:', self.mainFrame().url().toString())
        # do stuff with html ...
        print('Reloading in 3 seconds...\n')
        QtCore.QTimer.singleShot(2000, self.refresh)

if __name__ == '__main__':

    signal.signal(signal.SIGINT, signal.SIG_DFL)
    app = QtGui.QApplication(sys.argv)
    webpage = WebPage('http://en.wikipedia.org/')
    print('Press Ctrl+C to quit\n')
    sys.exit(app.exec_())

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

componentDidMount를 다시 렌더링하려면 어떻게해야합니까?

분류에서Dev

React.js는 컴포넌트를 어떻게 다시 렌더링합니까?

분류에서Dev

업데이트 된 defaultValue로 DatePicker를 어떻게 다시 렌더링합니까?

분류에서Dev

a4j를 사용하여 dojo 구성 요소를 어떻게 다시 렌더링합니까?

분류에서Dev

렌더링 /로드시 페이지 위치를 어떻게 설정합니까?

분류에서Dev

OpenGL에서 색상이 다른 큐브를 어떻게 렌더링합니까?

분류에서Dev

localStorage를 사용한 후 Vue 3에서 요소를 어떻게 다시 렌더링합니까?

분류에서Dev

반응 라이브러리는 구성 요소를 어떻게 다시 렌더링합니까?

분류에서Dev

JavaScript / jQuery에서 페이지를 다시 렌더링하려면 어떻게해야합니까?

분류에서Dev

ajax를 통해 명령 버튼을 어떻게 렌더링합니까? 동적이어야합니다

분류에서Dev

React : 다시 렌더링하지 않고 map ()으로 여러 메뉴를 렌더링하려면 어떻게해야합니까?

분류에서Dev

어떻게 모든 것을 렌더링없이 j2html를 사용합니까

분류에서Dev

동적 렌더링에 HTML 태그를 추가하고 값을로드하려면 어떻게합니까?

분류에서Dev

Shiny에서 루프 내부의 상자에 대한 HTML 콘텐츠를 어떻게 렌더링합니까?

분류에서Dev

AngularJS에서 컴파일을 통해 삽입 된 html 태그를 어떻게 렌더링합니까?

분류에서Dev

OPENGL 텍스처 / 매핑이 다른 두 개체를 어떻게 올바르게 렌더링합니까?

분류에서Dev

DB의 데이터를 ActiveAdmin이 생성 한 대시 보드 페이지로 어떻게 렌더링합니까?

분류에서Dev

SPA의 특정 구성 요소 만 표시하는 새 경로를 어떻게 렌더링합니까?

분류에서Dev

API를 가져 오는 다중 상태 구성 요소를 어떻게 렌더링해야합니까?

분류에서Dev

ReactJS에서 한 컴포넌트를 다른 컴포넌트 내에서 어떻게 렌더링합니까?

분류에서Dev

python-moderngl에서 텍스처가 다른 여러 객체를 어떻게 렌더링합니까?

분류에서Dev

글꼴 렌더링 문제를 어떻게 진단합니까?

분류에서Dev

블록을 다시 렌더링하려면 어떻게해야합니까?

분류에서Dev

Redux 상태에서 어레이를 매핑 할 때 새 하위 구성 요소 만 다시 렌더링하려면 어떻게해야합니까?

분류에서Dev

부모의 렌더링 메서드에서 상태 저장 자식 구성 요소를 어떻게 다시 만들어야합니까?

분류에서Dev

이 원치 않는 다시 렌더링 루프를 어떻게 제거 할 수 있습니까?

분류에서Dev

Svelte에서 배열에서 객체를 삭제 한 후 뷰를 다시 렌더링하려면 어떻게해야합니까?

분류에서Dev

QtString에서 오류를 어떻게 제거합니까? pyqt4 및 Python 3.4.3을 사용하고 있습니다.

분류에서Dev

후크로 작업을 트리거 한 후 redux 상태를 다시 렌더링하려면 어떻게해야합니까?

Related 관련 기사

  1. 1

    componentDidMount를 다시 렌더링하려면 어떻게해야합니까?

  2. 2

    React.js는 컴포넌트를 어떻게 다시 렌더링합니까?

  3. 3

    업데이트 된 defaultValue로 DatePicker를 어떻게 다시 렌더링합니까?

  4. 4

    a4j를 사용하여 dojo 구성 요소를 어떻게 다시 렌더링합니까?

  5. 5

    렌더링 /로드시 페이지 위치를 어떻게 설정합니까?

  6. 6

    OpenGL에서 색상이 다른 큐브를 어떻게 렌더링합니까?

  7. 7

    localStorage를 사용한 후 Vue 3에서 요소를 어떻게 다시 렌더링합니까?

  8. 8

    반응 라이브러리는 구성 요소를 어떻게 다시 렌더링합니까?

  9. 9

    JavaScript / jQuery에서 페이지를 다시 렌더링하려면 어떻게해야합니까?

  10. 10

    ajax를 통해 명령 버튼을 어떻게 렌더링합니까? 동적이어야합니다

  11. 11

    React : 다시 렌더링하지 않고 map ()으로 여러 메뉴를 렌더링하려면 어떻게해야합니까?

  12. 12

    어떻게 모든 것을 렌더링없이 j2html를 사용합니까

  13. 13

    동적 렌더링에 HTML 태그를 추가하고 값을로드하려면 어떻게합니까?

  14. 14

    Shiny에서 루프 내부의 상자에 대한 HTML 콘텐츠를 어떻게 렌더링합니까?

  15. 15

    AngularJS에서 컴파일을 통해 삽입 된 html 태그를 어떻게 렌더링합니까?

  16. 16

    OPENGL 텍스처 / 매핑이 다른 두 개체를 어떻게 올바르게 렌더링합니까?

  17. 17

    DB의 데이터를 ActiveAdmin이 생성 한 대시 보드 페이지로 어떻게 렌더링합니까?

  18. 18

    SPA의 특정 구성 요소 만 표시하는 새 경로를 어떻게 렌더링합니까?

  19. 19

    API를 가져 오는 다중 상태 구성 요소를 어떻게 렌더링해야합니까?

  20. 20

    ReactJS에서 한 컴포넌트를 다른 컴포넌트 내에서 어떻게 렌더링합니까?

  21. 21

    python-moderngl에서 텍스처가 다른 여러 객체를 어떻게 렌더링합니까?

  22. 22

    글꼴 렌더링 문제를 어떻게 진단합니까?

  23. 23

    블록을 다시 렌더링하려면 어떻게해야합니까?

  24. 24

    Redux 상태에서 어레이를 매핑 할 때 새 하위 구성 요소 만 다시 렌더링하려면 어떻게해야합니까?

  25. 25

    부모의 렌더링 메서드에서 상태 저장 자식 구성 요소를 어떻게 다시 만들어야합니까?

  26. 26

    이 원치 않는 다시 렌더링 루프를 어떻게 제거 할 수 있습니까?

  27. 27

    Svelte에서 배열에서 객체를 삭제 한 후 뷰를 다시 렌더링하려면 어떻게해야합니까?

  28. 28

    QtString에서 오류를 어떻게 제거합니까? pyqt4 및 Python 3.4.3을 사용하고 있습니다.

  29. 29

    후크로 작업을 트리거 한 후 redux 상태를 다시 렌더링하려면 어떻게해야합니까?

뜨겁다태그

보관