質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Chrome

Google Chromeは携帯、テレビ、デスクトップなどの様々なプラットフォームで利用できるウェブブラウザです。Googleが開発したもので、Blink (レンダリングエンジン) とアプリケーションフレームワークを使用しています。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Q&A

解決済

2回答

1895閲覧

Google Chromeで特定の操作をしたときにPythonプログラムを実行する

Yhaya

総合スコア439

Chrome

Google Chromeは携帯、テレビ、デスクトップなどの様々なプラットフォームで利用できるウェブブラウザです。Googleが開発したもので、Blink (レンダリングエンジン) とアプリケーションフレームワークを使用しています。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

0グッド

1クリップ

投稿2017/11/01 09:44

Google Chromeでpdfを開き、ダウンロードボタンを押したときに、そのpdfのホームページアドレスを取得して保存するpythonプログラムが走るようにしたいのですが、どのようにすればよいでしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

1,最終的に行いたい事は何なのですかー?
pdfをダウンロードした時のダウンロードURLをローカルのファイルに保存しておきたいのでしょうか?
2,行いたいパソコンに対して、どこまで権限がありますか。

他のやり方もあると思いますが、chrome.downloads.onDeterminingFilenameイベントを使うという手もあります。
↓はpdfファイルを開いて、ダウンロードボタンを押した時にlocalStorageにurlを書き込むchromeの拡張サンプルです。
◆js/background.js

javaScript

1(function () { 2 'use strict'; 3 chrome.downloads.onDeterminingFilename.addListener(function(item, suggest) { 4 if(item.mime === 'application/pdf'){ 5 console.log(item.url); 6 localStorage.setItem(item.startTime, item.url); 7 } 8 }); 9})();

◆マニフェストファイル (manifest.json)

json

1{ 2 "author": "うみゅ", 3 "description": "PDF_Download", 4 "permissions": ["storage" , "downloads"], 5 "manifest_version": 2, 6 "background": { 7 "scripts": ["js/background.js"], 8 "persistent": false 9 }, 10 "name": "PDF_Download", 11 "homepage_url": "http://example.com/", 12 "version": "1.0.0" 13}

投稿2017/11/02 01:34

umyu

総合スコア5846

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

サイトがHTTPであればPythonでProxyを書けばダウンロードの処理を比較簡単にPythonだけでフックできます。サイトがHTTPSであれば難易度はぐっと上がってmitmproxy等を使ってSSL/TLSの通信内容をインターセプトするか、ChromeのSSL/TLSライブラリにOSの仕組みを利用してDLL/共有ライブラリフックを仕掛けてその通信内容をPythonでインターセプトできるようにします。

投稿2017/11/01 11:50

編集2017/11/01 11:54
YouheiSakurai

総合スコア6142

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Yhaya

2017/11/01 12:25

mitmproxyのことは全く知らないのでよくわからないのですが、mitmproxyでSSLのリクエストを確認して、その内容を書き換えるプログラムをPythonで書くという認識でよいでしょうか?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問