私はgunicornとpythonプログラムを実行するサーバーを持っています。別のサーバーがurlを送信し、問題のサーバーがurlをスクラップして何らかの情報を送り返します。Xvfbがコード変更なしで失敗し始めた
私は、Xvfbを使用して、背景にfirefoxタブを実行しているセレンを持っています。
これは私が今しばらくの間、私のサーバーを再起動されたかではありません:
sudo Xvfb :10 -ac
export DISPLAY=:10
sudo pkill gunicorn
gunicorn -b 0.0.0.0:8080 wsgi:app
突然、Xvfbのを使用していたすべてのスクレープは、もはやそう、動作し、エラーを出しますが、同じコードはまだ私のローカルコンピュータ上で動作します私はそれがサーバ上でXvfbを使用していることと関係していることを知っています。私はすべてのXvfbのとFirefoxの仕事を殺害し、すべてのバックグラウンドジョブを殺害し、再起動を試みたが、している
7 XSELINUXs still allocated at reset
SCREEN: 0 objects of 256 bytes = 0 total bytes 0 private allocs
DEVICE: 0 objects of 96 bytes = 0 total bytes 0 private allocs
CLIENT: 0 objects of 136 bytes = 0 total bytes 0 private allocs
WINDOW: 0 objects of 32 bytes = 0 total bytes 0 private allocs
PIXMAP: 2 objects of 16 bytes = 32 total bytes 0 private allocs
GC: 4 objects of 16 bytes = 64 total bytes 0 private allocs
CURSOR: 1 objects of 8 bytes = 8 total bytes 0 private allocs
TOTAL: 7 objects, 104 bytes, 0 allocs
2 PIXMAPs still allocated at reset
PIXMAP: 2 objects of 16 bytes = 32 total bytes 0 private allocs
GC: 4 objects of 16 bytes = 64 total bytes 0 private allocs
CURSOR: 1 objects of 8 bytes = 8 total bytes 0 private allocs
TOTAL: 7 objects, 104 bytes, 0 allocs
4 GCs still allocated at reset
GC: 4 objects of 16 bytes = 64 total bytes 0 private allocs
CURSOR: 1 objects of 8 bytes = 8 total bytes 0 private allocs
TOTAL: 5 objects, 72 bytes, 0 allocs
1 CURSORs still allocated at reset
CURSOR: 1 objects of 8 bytes = 8 total bytes 0 private allocs
TOTAL: 1 objects, 8 bytes, 0 allocs
1 CURSOR_BITSs still allocated at reset
TOTAL: 0 objects, 0 bytes, 0 allocs
も同様のエラーが発生します。
は、ここでは動作を停止した後に、それは印刷を開始した新しいコンテンツです。
sudo Xvfb :10 -ac
それが出力開始されました:
EDITは1
また、1つの最近の変更は、私が入力したときにということである
Initializing built-in extension Generic Event Extension
Initializing built-in extension SHAPE
Initializing built-in extension MIT-SHM
Initializing built-in extension XInputExtension
Initializing built-in extension XTEST
Initializing built-in extension BIG-REQUESTS
Initializing built-in extension SYNC
Initializing built-in extension XKEYBOARD
Initializing built-in extension XC-MISC
Initializing built-in extension SECURITY
Initializing built-in extension XINERAMA
Initializing built-in extension XFIXES
Initializing built-in extension RENDER
Initializing built-in extension RANDR
Initializing built-in extension COMPOSITE
Initializing built-in extension DAMAGE
Initializing built-in extension MIT-SCREEN-SAVER
Initializing built-in extension DOUBLE-BUFFER
Initializing built-in extension RECORD
Initializing built-in extension DPMS
Initializing built-in extension Present
Initializing built-in extension DRI3
Initializing built-in extension X-Resource
Initializing built-in extension XVideo
Initializing built-in extension XVideo-MotionCompensation
Initializing built-in extension SELinux
Initializing built-in extension GLX
EDIT 2
try:except:ステートメントをブロックするエラーを削除した後の新しいエラーコードを次に示します。
...
File "./app/scraper/main.py", line 340, in uScrape
driver = webdriver.Firefox()
File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/firefox/webdriver.py", line 77, in __init__
self.binary, timeout),
File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/firefox/extension_connection.py", line 49, in __init__
self.binary.launch_browser(self.profile)
File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/firefox/firefox_binary.py", line 68, in launch_browser
self._wait_until_connectable()
File "/usr/local/lib/python2.7/dist-
packages/selenium/webdriver/firefox/firefox_binary.py", line 103, in _wait_until_connectable
raise WebDriverException("Can't load the profile. Profile "
WebDriverException: Message: Can't load the profile. Profile Dir: %s If you specified a log_file in the FirefoxBinary constructor, check it for details.
EDTI 3
$pip show selenium
Name: selenium
Version: 2.53.1
Location: /usr/local/lib/python2.7/dist-packages
を固定し、これらの3つのコマンドを実行した後、あなたの仮想Xセッション内で実行するgunicornたいいくつかの理由がありますか?また、私はそれが助けになるとは思っていませんが、私がセレンをやっている方法は、xvfb-runのpython .pyを使っています...これは仮想フレームバッファセッションを開始してセレンを実行してからXvfbセッションを停止します...また、あなたのセレンを実行しているとき(または単にFirefoxを起動しているとき)には、どのようなエラーが発生しますか? –
Foon
@Foon編集2を参照してください。ケースバイケースxvfbを実行してください – Rorschach