2017-09-24 5 views
-5

特定のウェブサイトを掻き出そうとしています。たとえば、そのウェブサイト(https://www.accessdata.fda.gov/scripts/cder/cliil/index.cfm)のインデックスページでデータフィールド(国を選択できます)を選択し、 USAそれは検索ページ(https://www.accessdata.fda.gov/scripts/cder/cliil/dsp_Search.cfm)をナビゲートします。私は検索ページをダウンロードしたいと思っています。私はそれを掻きたいです。しかし、クエリ文字列はありません。どうすればいいですか?ウェブサイトをスクラップしてデータを取得するか、既存のウェブサイトファイルをダウンロードする

私はパラメータ付きのインデックスにフォームを投稿できますか?編集

私はWebRequestクラス使用しますが、それはdata.Are私のパラメータを指定してページを表示しませんが偽のですか?

は、ここで私はあなたの要件は、私は、以下の情報が十分にあると思い満たさ得るために、しかし#CでHTTPリクエストを作成する方法を知らない私のコード

System.Net.WebRequest request1 = System.Net.WebRequest.Create("https://www.accessdata.fda.gov/scripts/cder/cliil/dsp_Search.cfm"); 
      var Deger1 = "{'DataField':'COUNTRY','COUNTRY':'USA','Keywords':'','Submit':'Submit'}"; 
      request1.Method = "POST"; 

       byte[] byteArray = System.Text.Encoding.UTF8.GetBytes(Deger1); 
      request1.ContentType = "text/xml"; 
      request1.ContentLength = byteArray.Length; 
      Stream dataStream = request1.GetRequestStream(); 
      dataStream.Write(byteArray, 0, byteArray.Length); 
      dataStream.Close(); 
      System.Net.WebResponse response = request1.GetResponse(); 
      Console.WriteLine(((System.Net.HttpWebResponse)response).StatusDescription); 
      dataStream = response.GetResponseStream(); 
      StreamReader reader = new StreamReader(dataStream, System.Text.Encoding.UTF8, true); 
      string responseFromServer = reader.ReadToEnd(); 

      reader.Close(); 
      dataStream.Close(); 
      response.Close(); 

答えて

0

です。

1. FormData={ 
    'DataField':'COUNTRY','COUNTRY':'USA','Keywords':'','Submit':'Submit' 
} 
2. You should make a post request with the below url along with the above form data. 

"https://www.accessdata.fda.gov/scripts/cder/cliil/dsp_Search.cfm" 

私は他の言語でテストし、動作することを確認しました。

はところで、私は、次のURLを使用して、検索フィールドに以下のパラメータを満たすことにより、情報の上に持っている:

url = "https://www.accessdata.fda.gov/scripts/cder/cliil/index.cfm" 

Search Fields: 

1. Country 
2. USA 
+0

おかげで、私はそれを試してみたが、それは、データのページを与えるものではありません...私が編集しました質問と私は質問の終わりに私のコードを追加します。私のコードは間違っていますか? – user1688401

+0

問題ありません。あなたの検討のために、操作全体を処理する前に頭に入れておくべき2つのことがあります。ヘッダに 'User-Agent'を使う必要があり、最後にデータはjson形式です。ありがとう。 – SIM

関連する問題