C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[3]: web上のボタンの非表示が回避できません。


(過去ログ 116 を表示中)

[トピック内 7 記事 (1 - 7 表示)]  << 0 >>

■68222 / inTopicNo.1)  web上のボタンの非表示が回避できません。
  
□投稿者/ Pirror (3回)-(2013/10/01(Tue) 23:18:58)

分類:[C#] 

お世話になっております。

<textarea aria-disabled="true" id="body" class="b-updateform-textarea b-spelling-textarea lj-spellchecker-disabled ui-state-disabled" tabIndex="50" cols="60" rows="10" name="body" autocomplete="off"></textarea>

<button class="lj-widget lj-widget-36" disabled="disabled" tabIndex="150" name="action:update" type="submit" value="1" data-widget="caption" data-value="submit" data-widget-id="36">登録</button>

上記HTMLにて、[body]のテキストエリアに手動で入力すると、
【登録】ボタンを押せるのですが、

プログラムにて、
doc.Body.All.GetElementsByName("body")[0].SetAttribute("value", "abc");
とセットすると、[body]のテキストエリアに"abc"が表示されますが、
【登録】ボタンが非表示になります。

■下記の様にReplaceして、disableを削ってみたり、
string source = webBrowser1.Document.Body.InnerHtml;
source = source.Replace("<button class=\"lj-widget lj-widget-36\" disabled=\"disabled\"", "<button class=\"lj-widget lj-widget-36\"");

■disabledをfalseにして試してみたり
フォーム = doc.All.GetElementsByName("action:update");
フォーム[0].SetAttribute("disabled", "false");

等とも試してみたが思った結果が得られませんでした。

どの様にしたら良いのか、
対処の仕方が分かる方がいたらよろしくお願いします。

出来れば、ソースを教えていただけると
私としては、大変助かります。

どうぞ、よろしくお願いします。

尚、実行環境は次の様になっています。
Visual C# 2010
webBrowser1 1つ貼り付け
引用返信 編集キー/
■68223 / inTopicNo.2)  Re[1]: web上のボタンの非表示が回避できません。
□投稿者/ WebSurfer (63回)-(2013/10/02(Wed) 10:27:03)
No68222 (Pirror さん) に返信
> お世話になっております。
>
> <textarea aria-disabled="true" id="body" class="b-updateform-textarea b-spelling-textarea lj-spellchecker-disabled ui-state-disabled" tabIndex="50" cols="60" rows="10" name="body" autocomplete="off"></textarea>
>
> <button class="lj-widget lj-widget-36" disabled="disabled" tabIndex="150" name="action:update" type="submit" value="1" data-widget="caption" data-value="submit" data-widget-id="36">登録</button>
>
> 上記HTMLにて、[body]のテキストエリアに手動で入力すると、
> 【登録】ボタンを押せるのですが、
>
> プログラムにて、
> doc.Body.All.GetElementsByName("body")[0].SetAttribute("value", "abc");
> とセットすると、[body]のテキストエリアに"abc"が表示されますが、
> 【登録】ボタンが非表示になります。
>
> ■下記の様にReplaceして、disableを削ってみたり、
> string source = webBrowser1.Document.Body.InnerHtml;
> source = source.Replace("<button class=\"lj-widget lj-widget-36\" disabled=\"disabled\"", "<button class=\"lj-widget lj-widget-36\"");
>
> ■disabledをfalseにして試してみたり
> フォーム = doc.All.GetElementsByName("action:update");
> フォーム[0].SetAttribute("disabled", "false");
>
> 等とも試してみたが思った結果が得られませんでした。
>
> どの様にしたら良いのか、
> 対処の仕方が分かる方がいたらよろしくお願いします。
>
> 出来れば、ソースを教えていただけると
> 私としては、大変助かります。
>
> どうぞ、よろしくお願いします。
>
> 尚、実行環境は次の様になっています。
> Visual C# 2010
> webBrowser1 1つ貼り付け

目的は何でしょうか?

見たところ、既存のサイトにアクセスし文字列を送信することを、
ツールを作って自動的に行おうとしているように見えます。

アクセスするのが他人のサイトであるとすると、そのサイトの管
理者は自動化ツールでアクセスされたくないと思っているかもし
れませんが、そのあたりは大丈夫ですか?

引用返信 編集キー/
■68225 / inTopicNo.3)  Re[2]: web上のボタンの非表示が回避できません。
□投稿者/ PANG2 (8回)-(2013/10/02(Wed) 12:39:36)
遅延バインディングでdisabledプロパティを触る(C# 4)

dynamic element = webBrowser1.Document.All.GetElementsByName("action:update")[0].DomElement;
element.disabled = false;

引用返信 編集キー/
■68227 / inTopicNo.4)  Re[2]: web上のボタンの非表示が回避できません。
□投稿者/ Pirror (4回)-(2013/10/02(Wed) 13:16:36)
No68223 (WebSurfer さん) に返信
> ■No68222 (Pirror さん) に返信
>>お世話になっております。
>>
>><textarea aria-disabled="true" id="body" class="b-updateform-textarea b-spelling-textarea lj-spellchecker-disabled ui-state-disabled" tabIndex="50" cols="60" rows="10" name="body" autocomplete="off"></textarea>
>>
>><button class="lj-widget lj-widget-36" disabled="disabled" tabIndex="150" name="action:update" type="submit" value="1" data-widget="caption" data-value="submit" data-widget-id="36">登録</button>
>>
>>上記HTMLにて、[body]のテキストエリアに手動で入力すると、
>>【登録】ボタンを押せるのですが、
>>
>>プログラムにて、
>>doc.Body.All.GetElementsByName("body")[0].SetAttribute("value", "abc");
>>とセットすると、[body]のテキストエリアに"abc"が表示されますが、
>>【登録】ボタンが非表示になります。
>>
>>■下記の様にReplaceして、disableを削ってみたり、
>>string source = webBrowser1.Document.Body.InnerHtml;
>>source = source.Replace("<button class=\"lj-widget lj-widget-36\" disabled=\"disabled\"", "<button class=\"lj-widget lj-widget-36\"");
>>
>>■disabledをfalseにして試してみたり
>>フォーム = doc.All.GetElementsByName("action:update");
>>フォーム[0].SetAttribute("disabled", "false");
>>
>>等とも試してみたが思った結果が得られませんでした。
>>
>>どの様にしたら良いのか、
>>対処の仕方が分かる方がいたらよろしくお願いします。
>>
>>出来れば、ソースを教えていただけると
>>私としては、大変助かります。
>>
>>どうぞ、よろしくお願いします。
>>
>>尚、実行環境は次の様になっています。
>>Visual C# 2010
>>webBrowser1 1つ貼り付け
>
> 目的は何でしょうか?
>
> 見たところ、既存のサイトにアクセスし文字列を送信することを、
> ツールを作って自動的に行おうとしているように見えます。
>
> アクセスするのが他人のサイトであるとすると、そのサイトの管
> 理者は自動化ツールでアクセスされたくないと思っているかもし
> れませんが、そのあたりは大丈夫ですか?

大量にアクセスや負荷をかけるわけではないので
サイトに迷惑をかけることはないと思いますので
その点は大丈夫です。

引用返信 編集キー/
■68228 / inTopicNo.5)  Re[3]: web上のボタンの非表示が回避できません。
□投稿者/ Pirror (5回)-(2013/10/02(Wed) 13:19:22)
No68225 (PANG2 さん) に返信
> 遅延バインディングでdisabledプロパティを触る(C# 4)
>
> dynamic element = webBrowser1.Document.All.GetElementsByName("action:update")[0].DomElement;
> element.disabled = false;

PANG2さん、早速のアドバイスありがとうございます。
試してみましたが、結果は変化無しです。

テキストエリアに入力された文字が
手入力かプログラムで入力されたかは、
こういうプログラムではどこで判断されるのですか?

そこがポイントだと思います。
引用返信 編集キー/
■68229 / inTopicNo.6)  Re[3]: web上のボタンの非表示が回避できません。
□投稿者/ WebSurfer (64回)-(2013/10/02(Wed) 13:46:29)
No68227 (Pirror さん) に返信
>>目的は何でしょうか?
>>
>>見たところ、既存のサイトにアクセスし文字列を送信することを、
>>ツールを作って自動的に行おうとしているように見えます。
>>
>>アクセスするのが他人のサイトであるとすると、そのサイトの管
>>理者は自動化ツールでアクセスされたくないと思っているかもし
>>れませんが、そのあたりは大丈夫ですか?
>
> 大量にアクセスや負荷をかけるわけではないので
> サイトに迷惑をかけることはないと思いますので
> その点は大丈夫です。

サイトの持ち主に確認されたわけではなく、ご自分でそう思っている
ということですか・・・

引用返信 編集キー/
■68233 / inTopicNo.7)  Re[4]: web上のボタンの非表示が回避できません。
□投稿者/ PANG2 (9回)-(2013/10/02(Wed) 15:02:42)
No68228 (Pirror さん) に返信
> ■No68225 (PANG2 さん) に返信
>>遅延バインディングでdisabledプロパティを触る(C# 4)
>>
>>dynamic element = webBrowser1.Document.All.GetElementsByName("action:update")[0].DomElement;
>>element.disabled = false;
>
> PANG2さん、早速のアドバイスありがとうございます。
> 試してみましたが、結果は変化無しです。

disabled を false にする方法でした。
非表示を表示にする方法ではありません。
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -