問題タブ [webpage-screenshot]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - サーバーAはウェブサイトBのスクリーンショットを作成する必要があります
別のドメイン/サーバーの別のページからスクリーンショットを作成し、現在のページに表示したいと考えています。
iframe でやろうと思ったのですが、ビューポートで問題が発生しました (ページ全体が収まらない、幅 350px など)。私が見つけたソリューションは現在のページのスクリーンショットしか作成しないため、キャンバス HTML5 は使用できません。
PHPで何かが必要だと思います。サードパーティのサービスを見つけましたが、気に入らず、使用したくありません。
サーバーはVPSではない共有ホスティングサーバーのみであるため、WebKitまたはPhantomJSをインストールできません。何をすべきか考えている人はいますか?
cordova - InAppBrowser のスクリーンショット?
PhoneGap で InAppBrowser のスクリーンショットを作成したいと考えています。私はたくさん検索しましたが、何も見つかりませんでした。これは可能ですか?
私のターゲットは: iOS と Android
php - PHP で POST データを使用して URL リクエストのスクリーンショットをキャプチャする方法
PHP スクリプトを使用して POST DATA 変数を URL に送信し、URL が HTML 文字列で応答します。ブラウザに表示されている上記の HTML 文字列のスクリーンショットをキャプチャするにはどうすればよいですか。HTMLコンテンツ用とスクリーンショット用の2つのPOSTリクエストを送信する必要がない場合、これが最適なソリューションです。
更新: さらに情報を追加します。私の Web サイトは、他の Web サイトから HTML コンテンツをクロールします (POST データを Web サイトに送信し、その応答を取得します)。HTMLの文字列のみです。さらに、エンドユーザーが見ることができるものとしてブラウザーに表示されるこの応答のスクリーンショットを取得したいと考えています。すべてのアクションはサーバー側で行われます。
ruby - Ruby を使用した Retina クオリティのフルページのスクリーンショット
多くのオプションを試してみましたが、これに対する解決策を見つけるのに苦労しています。
私の理想的な目標は、スクリーンショットができるようになることです
- 特定の CSS 要素を取得する
- 要素の高さ全体を取得します (ページの高さよりも長い場合でも)
- 含まれているアセットが完全に読み込まれるまで待ちます
- 速い
最初の試行 (chromedriver がインストールされた selenium-webdriver を使用)
Gemfile
App.rb
これはある程度機能しますが、スクリーンショットは最大の高さにトリミングされます (これは Chromedriver の非常に古い問題のようですhttps://code.google.com/p/chromedriver/issues/detail?id=294 )
2 回目の試行 (ポルターガイストを使用して、代わりに phantomjs に切り替えます)
Gemfile
App.rb
これにはさまざまな問題があり、
- ページの全長をキャプチャします
- Web フォントは埋め込まれていません ( https://github.com/ariya/phantomjs/issues/12132 )
- retina は利用できません ( https://github.com/ariya/phantomjs/issues/10964 )
3 回目の試行 (Capybara を使用して page.save_screenshot(path, :full => true) を利用しようとする)
Gemfile
App.rb
ショートバージョン - これは役に立たない
4度目の挑戦(ワティル使用)
Gemfile
App.rb
これは機能します (Firefox を起動します) が、Retina スクリーンショットを撮る機能について DevicePixelRatio に関して同じ問題があります。
5 回目の試行 (Chrome の使用に戻る)
App.rb
トリミングされたページの問題にまっすぐ戻ります。
理想的には、最新の ChromeDriver v2.12 のモバイル エミュレーション オプションを使用してこれを実現する方法があると思います。
個々のデバイス属性の指定
個々の属性を指定してモバイル エミュレーションを有効にすることもできます。この方法でモバイル エミュレーションを有効にするには、「mobileEmulation」ディクショナリに「deviceMetrics」ディクショナリと「userAgent」文字列を含めることができます。次のデバイス メトリックを「deviceMetrics」ディクショナリで指定する必要があります。 「width」 - デバイスの画面のピクセル単位の幅 「height」 - デバイスの画面のピクセル単位の高さ 「pixelRatio」 - デバイスのピクセル比
https://sites.google.com/a/chromium.org/chromedriver/mobile-emulation
しかし、それを機能させることはできませんでした。
どんな提案でも本当に感謝します!