私はpdfにプリントするためにクロムヘッドレスを使用しようとしています。私はWindows 10コマンドプロンプトを使用しています。私は、次の操作を行う場合は、すべてが期待どおりに動作:PythonからヘッドレスChromeを実行中
cd "C:\Program Files (x86)\Google\Chrome\Application"
chrome --headless --print-to-pdf=c:\Users\timmc\Documents\a.pdf --disable-gpu https://www.google.com/
をしかし、最終的に私はsubprocess.call()と「プログラムファイル(x86の)」にスペースを使用してPythonスクリプトからこのコマンドを実行するように見えますトラブルを引き起こす可能性があります。私はスタックオーバーフローで他の答えを見てきましたが、動作するものは見つかりませんでした。私は次のことをしようとした場合:
C:\"Program Files (x86)"\Google\Chrome\Application\chrome --headless --print-to-pdf=c:\Users\timmc\Documents\b.pdf --disable-gpu https://www.google.com/
私はGoogleがヘッドレスモードで開きますではなく、いくつかの非常に異常な動作を取得し、それは二つのタブ、Googleとの1を開き、1はプログラム%のようなものを開こうとすると20--オリジナルプロセス開始時間%3D13156438844432514%20 - ファーストスタート%20ファイル%20%28x86%29。
誰でも上記の動作を説明できますか?
スペースを扱う簡単な方法はありますか?それはsubprocess.call()を使ってPythonスクリプト内で動作しますか?
同じことを達成する別の方法はありますか? (私はむしろセレンを使用しませんが、クロムヘッドレスを直接使用します)。
EDIT: 私は最終的に私のPythonスクリプトから実行するように期待していますコードは次のとおりです。
subprocess.call('C:\"Program Files (x86)"\Google\Chrome\Application\chrome --headless --print-to-pdf=c:\Users\timmc\Documents\b.pdf --disable-gpu https://www.google.com/',shell=True)
で説明したように、最後のバックスラッシュは、次の二重引用符をエスケープあなたは私たちがそれに多くなりこれ、あなたの実際のコードが何であるかを推測作っています助けるのが難しい。 –
ありがとう、私は実際のコードを含めるために投稿を編集しました。私が含める必要があるものが他にもある場合は、言ってください。 – Tim