ABA


"עזרה קלה עם תוכנית dot.net בקבלת דף HTML"
גירסת הדפסה        
קבוצות דיון פיתוח, תיכנות ובניית אתרים נושא #15922 מנהל    סגן המנהל    מפקח   Winner    צל"ש   מומחה  
אשכול מספר 15922
VeNom  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 7.6.02
7922 הודעות, 1 פידבק
   17:45   29.05.10   
אל הפורום  
  עזרה קלה עם תוכנית dot.net בקבלת דף HTML  
 
   שלום..מצאתי תוכנית ברשת שאמורה להיכנס ל url כלשהו ולשמור אותו כ html אצלי במחשב.
התוכנית די קצרה ודי מובנה אך יש לי בעיה איתה.
בחלק מהאתרים כמו ynet וכו' הכל עובד די טוב.
בחלק מהאתרים כמו וואלה לדוגמא אני מקבל exception :

Unhandled Exception: System.Net.WebException: The server committed a protocol violation. Section=ResponseHeader Detail=Header name is invalid.

אבל זה לא קורה בכל מקום.
יש אתרים שאני מקבל שגיאה של

Unhandled Exception: System.Net.WebException: The remote server returned an error: (500) Internal Server Error.


שבאמת שאני לא מוצא סיבה שזה יקרה..אבל אני די חדש בדוט.נט ויכול להיות שאני לא מכר את הפונקציונליות שאני באמת צריך כאן.

עכשיו יש את המקרה האחרון שהוא חיבור ל https שכשאר אני נכנס אליו בדפדפן אני מקבל HTML אחד וכאשר אני שומר לקובץ דרך הרצת התוכנית אני מקבל דף HTML שונה(אבל אני מקבל דף כלשהו).
אין לי מושג איך ולמה זה קורה...
כל מה שרציתי זה לבנות תוכנית קצרה שתדע להיכנס ללינק מסויים ולהחזיר את ה html של אותו לינק כ string או כקובץ..זה לא כזה חשוב לי איך.

למי שמכיר דרך פשוטה יותר או יודע מה הבעיה שלי כאן(הבעיה האחרונה שאני לא מקבל HTML זהה) אני אשמח לקבל עצות או דעות..אני באמת חדש בדוטנט ולא כל כך מכיר את האובייקטים הללו..

התוכנית שאיתה עשיתי את הכל היא כאן:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;
using System.IO;

namespace temp
{
class Program
{
static void Main()
{
GetFile("http://www.walla.co.il", "c:\\temp\\walla.html");
}

public static void GetFile(string strURL, string strFilePath)
{

WebRequest myWebRequest = WebRequest.Create(strURL);

WebResponse myWebResponse = myWebRequest.GetResponse();

Stream ReceiveStream = myWebResponse.GetResponseStream();

Encoding encode = System.Text.Encoding.GetEncoding("Hebrew");

StreamReader readStream = new StreamReader(ReceiveStream, encode);

string strResponse = readStream.ReadToEnd();

StreamWriter oSw = new StreamWriter(strFilePath);

oSw.WriteLine(strResponse);

oSw.Close();

readStream.Close();

myWebResponse.Close();

}
}
}

תודה מראש!


                                שתף        
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

  האשכול     מחבר     תאריך כתיבה     מספר  
  בלי להכנס יותר מידי ל .NET Net_Boy  29.05.10 18:14 1
     שאתה מדבר על header VeNom  29.05.10 18:30 2
  ---אפשר לנעול--- VeNom  29.05.10 19:39 3

       
Net_Boy  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 1.4.02
17151 הודעות, 1 פידבק
   18:14   29.05.10   
אל הפורום  
  1. בלי להכנס יותר מידי ל .NET  
בתגובה להודעה מספר 0
 
   כל אתר רץ על HTTP SERVER אחר
לכל HTTP SERVER יש את השגעונות שלו.
ולכן אתה מקבל שגיאה בחלק שה HEADER לא תקין.

היות ואתה לא דפרפן ואתה צריך את הדבר המינימלי ביותר
אני ממליץ לך להזין את ה HTTP HEADERS בצורה ידנית ולהזין את הדברים המינימליסטים ביותר.

בנוגע ל HTTPS אתה צריך CERTIFICATE
תקרא על זה בויקיפדיה


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
VeNom  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 7.6.02
7922 הודעות, 1 פידבק
   18:30   29.05.10   
אל הפורום  
  2. שאתה מדבר על header  
בתגובה להודעה מספר 1
 
   מה הכוונה?
אני יודע שרוב האתרים עובדים על HTTP 1.1..ואני יודע שיש פעולות של get put וכו'..
מה הכוונה ל header?
ולעניינו..המקרה שהכי מציק לי זה דווקא ה https שאני מנסה לגשת אליו..כאשר בדפדפן שלי אני מקבל דף אחד ובהרצה של התוכנית דף שונה..
אבל שניהם על אותה כתובת..
הייתי בטוח שהתוכנית מדמה דפדפן או משהו..
אני אקרא על ה certificates אבל בפועל אני לא רואה איך זה יכול לעזור לי..כאילו יש property או משהו שצריך לסמן כדי להיכנס לאתר עם הרשאות?
למה אין ברירת מחדל כמו ב ie?

תודה רבה!


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
VeNom  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 7.6.02
7922 הודעות, 1 פידבק
   19:39   29.05.10   
אל הפורום  
  3. ---אפשר לנעול---  
בתגובה להודעה מספר 0
 
   מצאתי תוכנה שעושה בדיוק מה שאני רוצה..תודה.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

תגובה מהירה  למכתב מספר: 
 
___________________________________________________________________

___________________________________________________________________
למנהלים:  נעל | תייק בארכיון | מחק | העבר לפורום אחר | מחק תגובות | עגן אשכול
       



© כל הזכויות שמורות ל-רוטר.נט בע"מ rotter.net