PySide (Qt for Python) は、Qt(キュート)の Python バインディングで、GUI などを構築するためのクロスプラットフォームなライブラリです。Linux/X11, macOS および Microsoft Windows をサポートしています。配布ライセンスは LGPL で公開されています。
以前、当ブログで紹介した、QWebEngineView で表示したサイトの HTML を取得するサンプル [1] について、より簡単な方法が判ったので改定します。
今回のテーマ
- QWebEngineView で読み込んだ URL は、QWebEnginePage に表示されますが、ここに表示されたウェブサイトの HTML のソースを取得します。[改訂版]
なお、本サンプルで使用しているウェブサイトは、下記を利用しています。
下記の OS 環境で動作確認をしています。
Fedora Workstation 39 | x86_64 | |
Python | 3.12.1 | |
PySide6 | 6.6.2 |
サンプルを以下に示します。このサンプルは、指定した URL を表示して、そのソースを標準出力するという単純なものです。
HTML ソースの内容取得には、QWebEnginePage の toHtml メソッドを利用しています。当初、マニュアル(参考サイト [3])でこのメソッドの説明を読んでも使い方がピンとこなかったので、用法の追求を後回しにしてしまいました。
qt_webenginepage_2.py
このサンプルの実行例を以下に示しました。
qt_webenginepage_2.py の実行例
表示された HTML の内容が標準出力されます。
qt_webenginepage.py の出力例
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head> <html xmlns="http://www.w3.org/1999/xhtml"><head> <!-- Google tag (gtag.js) --> <script type="text/javascript" async="" src="https://ssl.google-analytics.com/ga.js"></script><script async="" src="https://www.googletagmanager.com/gtag/js?id=G-ZML74SB67X"></script> <script> window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-ZML74SB67X'); </script> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <meta http-equiv="Content-Style-Type" content="text/css"> <meta http-equiv="Content-Script-Type" content="text/javascript"> <meta name="keywords" content="パンダ,ジャイアントパンダ,上野パンダ,上野動物園,上野,保護,サポート基金,ZOONET"> <meta name="description" content="東京動物園協会の運営する「UENO-PANDA.JP」は、上野動物園のジャイアントパンダを紹介する公式サイトです。ジャイアントパンダの個体情報をはじめ、上野動物園へのアクセス、開園時間、園内マップ、その他ジャイアントパンダ保護サポート基金等、さまざまな情報を掲載しています。"> <meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0"> <link rel="shortcut icon" href="//www.ueno-panda.jp/favicon.ico" type="image/x-icon"> <link rel="icon" href="//www.ueno-panda.jp/favicon.ico" type="image/x-icon"> <title>上野動物園のジャイアントパンダ情報サイト「UENO-PANDA.JP」</title> : : (以下省略)
参考サイト
- bitWalk's: QWebEnginePage から HTML ソースを取得する ~ PySide6 [2024-01-08]
- QWebEngineView - Qt for Python
- QWebEnginePage - Qt for Python
にほんブログ村
#オープンソース
0 件のコメント:
コメントを投稿