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

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

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

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Q&A

1回答

4038閲覧

C# IE操作 WebBrowser 操作について(ダウンロード方法)

退会済みユーザー

退会済みユーザー

総合スコア0

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

0グッド

0クリップ

投稿2018/08/27 02:00

編集2018/08/27 03:29

C# C# IE操作 WebBrowser 操作について

開発環境:Visual Studio 2017
使用OS:Windows 7

現在、C#でWebBrowserコントールを使用して自動でファイルのダウンロードを実施するプログラムを作成しています。

流れ
①指定サイトにアクセスしてログイン
②指定サイトにあるPDFをURLリンクを取得
③PDFファイルのあるリンクURLを指定して保存する。

②番目までは取得出来ている上記なのですが、ダウンロードファイルのあるURLをnavigateしても
ダウンロード確認の画面等の表示されないまま停止しています。
下記URLに同じ様な質問がありましたが、WebClientにcookie情報継承する方法がわからず苦戦しています。
http://bbs.wankuma.com/index.cgi?mode=al2&namber=68287&KLOG=116

ログインした後のcookieを取得してWebBrowserに継承するにはどのように記述すればいいのか教えていただけないでしょうか。
取得したcookie情報は
temp=temp; SessId=**************************; PageSeed=*************************;

もしくは、ダウンロードファイルのあるURLをnavigateしても
ダウンロード確認の画面等の表示されないまま停止してしまっている原因・対策方法を教えていただけないでしょうか。
よろしくお願いいたします。

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

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

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

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

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

Zuishin

2018/08/27 03:10

同じ質問が二つあります。また同時刻に編集されています。
退会済みユーザー

退会済みユーザー

2018/08/27 03:31 編集

題名は変えるべきであったと思います。申し訳ありませんでした。 作成しているプログラムは同一ですが、質問が別箇所である為2つに分けて投稿しました。 一つの質問に2つの質問を記述した方が良いのでしょうか。
kenshirou

2018/08/27 03:43

PDFファイルのリンクURLをWebBrowserでNavigateしたとのことですが、その際にWebBrowser上には何か表示されていますか?アクセス拒否ならその旨ページが表示されていると思いますし、PDF表示ソフト側でPDFをブラウザ表示する設定なら、WebBrowser上に表示されている場合があります。
退会済みユーザー

退会済みユーザー

2018/08/27 04:56

kenshirou様 コメントわりがとうございます。ログイン後の画面のままエラーも出ておらず終了しています。
kenshirou

2018/08/28 03:25 編集

「ログイン後の画面のままエラーも出ておらず終了」とありますが、DocumentCompleted等のイベントも発生しないでしょうか?あと、PDFファイルのリンクURLはどうやって取得しましたか?これをクリックするとJavaScriptが動作するようなことはないでしょうか?
guest

回答1

0

PDFファイルのあるリンクURLをNavigateするのではなく、PDFファイルのあるリンクに対してクリックを行うとどうなりますか?
PDFのリンクがaタグで用意されているものと仮定し、WebBrowser上の対象のaタグのHtmlElementを特定できたとして(以下ではこのHtmlElementの変数をelmとする)、

elm.InvokeMember("CLICK");

を実行するとどうなりますか?

投稿2018/08/27 03:53

kenshirou

総合スコア772

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

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

退会済みユーザー

退会済みユーザー

2018/08/27 04:04

回答ありがとうございます。 クリックすると正常にダウンロードすることは可能です。 しかし、出来ればURL指定でダウンロードしたいと考えています。
kenshirou

2018/08/27 04:22

「ダウンロードファイルのあるURLをnavigate」とあったので、WebBrowser上でPDFのレスポンスを得られればよいのかと思っていました。失礼しました。 PDFのダウンロードはWebClientで試行中でしょうか? もし、WebClientでのPDFダウンロードを試行中で、Cookie情報を渡せばダウンロードできるかも、ということであれば、以下にその回答がありますので参考にしてみては如何でしょうか? (もしかしたらUserAgent情報も偽装する必要があるかも知れません。そこら辺の情報もリンクされています。) https://teratail.com/questions/14551
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問