Ubuntuでは、さまざまなものを使用します。それは「自動壁紙チェンジャー、ダウンローダー、マネージャー」です。
RSSフィードから画像を取得し、デスクトップを自動的に更新できます。
したがって、x時間ごとにWebサイトのスクリーンショットを撮るRSSフィードをセットアップし、さまざまなものをフックすると、解決策が得られると思います。
RSSフィードの設定方法は実際にはわかりませんが、多様性について質問がある場合はお知らせください。
編集:
あなたがしたいことをする別の方法があります。
- 実行
sudo apt-get install libqt5webkit5 python3-pyqt5.qtwebkit python3-pyqt5 python3
して必要なライブラリをインストールします
次のpython3コードでファイルをセットアップします。このコードは、WEBSITE_URLからスクリーンショットを取得し、Ubuntuデスクトップを更新します。
import sys
import time
import os
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
from PyQt5.QtWebKitWidgets import *
WEBSITE_URL='https://earth.nullschool.net/#current/wind/surface/level/overlay=temp/winkel3'
OUT_FILE="websiteScreenshot.png"
class Screenshot(QWebView):
def __init__(self):
self.app = QApplication(sys.argv)
QWebView.__init__(self)
self._loaded = False
self.loadFinished.connect(self._loadFinished)
def capture(self, url, output_file):
self.load(QUrl(url))
self.wait_load()
# set to webpage size
frame = self.page().mainFrame()
self.page().setViewportSize(frame.contentsSize())
# render image
image = QImage(self.page().viewportSize(), QImage.Format_ARGB32)
painter = QPainter(image)
frame.render(painter)
painter.end()
print ('saving', output_file)
image.save(output_file)
def wait_load(self, delay=5):
# process app events until page loaded
while not self._loaded:
self.app.processEvents()
t_end = time.time() + delay
while time.time() < t_end:
self.app.processEvents()
self._loaded = False
def _loadFinished(self, result):
self._loaded = True
s = Screenshot()
s.capture(WEBSITE_URL, OUT_FILE)
#Update your background
workingDir=os.path.dirname(os.path.realpath(__file__))
os.system("gsettings set org.gnome.desktop.background picture-uri file://"+workingDir+"/"+OUT_FILE)
[スタートアップアプリケーション]で[追加]を押し、watch -n 3600 python3 yourfilepath
コマンドの下に入力します。yourfilepath
pythonscriptを保存した場所へのパスに置き換えます。これにより、3600秒= 1時間ごとにスクリプトが実行されます。
wait_load関数の遅延変数に注意してください。Webページにロードする時間がない場合は、値を増やします。