0

Chrome Headlessは、Chromeデスクトップが実行可能な機能を備えた完全機能版のChromeだったという印象を受けました。しかし、Chrome HeadlessはGoogleマップやGoogle Earthから3Dページを表示できないようです。ChromeヘッドレスがGoogle Maps 3DまたはGoogle Earthで動作しない

例GoogleマップのURL:

https://www.google.co.uk/maps/@51.6506889,-0.4041839,40a,35y,113.57h,73.36t/data=!3m1!1e3

Google Earthの:

https://earth.google.com/web/@51.6499525,-0.40162489,64.98644774a,251.31324967d,35y,111.968

ここでは、端末からの例です:

chrome --headless --disable-gpu --screenshot https://earth.google.com/web/@51.6499525,-0.40162489,64.98644774a,251.31324967d,35y,111.96869586h,49.99995375t,0r 

そして例人形遣い

const puppeteer = require('puppeteer'); 

async function run() { 
    const browser = await puppeteer.launch(); 
    const page = await browser.newPage(); 

    await page.setViewport({width:2880, height:1800}); 
    await page.goto('https://www.google.co.uk/maps/@51.5516152,0.7010375,66a,35y,170.86h,79.21t/data=!3m1!1e3', {"waitUntil" : "networkidle"}); 
    await page.screenshot({ path: './example-2d.png' }); 

    browser.close(); 
} 

run(); 

を使用して期待される結果とは何ですか?

結果は、デスクトップ用Chromeブラウザと同じ方法でレンダリングされることが期待されます。

代わりにどうなりますか?

Googleマップのリンクでは、3Dではなく2Dでレンダリングされます。 Googleの地球のため

エラーメッセージが与えられます。

おやおやスナップを!新しいGoogle Earthはあなたのブラウザでまだサポートされていません。代わりにChromeでこのリンクを試してみてください。 Chromeをインストールしていない場合は、こちらからダウンロードしてください。

これはなぜでしょうか?マップと地球を適切にレンダリングするには、Chromeで何かを有効にする必要がありますか?

答えて

0

2つの問題があります。

  1. --disable-gpuを使用しているため、WebGLは機能しません。このフラグを削除することで3D Google Mapsを利用できますが、Getting Started with Headless Chromeはこのフラグが必要であると言っているため、どこでも動作しない可能性があります。

  2. earth.google.com/webはを使用していますが、これはヘッドレスではサポートされていないようです。

私は--disable-gpuを省略することによって動作するように3D Googleマップを得ることができたが、スクリーンショットコマンドは、レンダリング終了していなかったページを作成したので、私は、リモートデバッガを使用する必要がありました。

関連する問題