İçeriğe geç
ShiftDelete.Net
Haber ara/ SDN'ye SorGiriş
Haber Akışı SDNTV İnceleme Forum Yapay Zeka Akıllı Telefon Elektrikli Otomobil Oyun ShiftDelete.Net Global Teknoloji Haberleri Mobil Otomobil Donanım Savunma Bilim Sosyal Medya İnternet Giyilebilir Teknoloji Rehber Ürünler Son dakika Yazarlar
  1. Ana sayfa
  2. Topluluk
  3. Programlama
  4. Programlama Dilleri
Programlama Dilleri

C# facebook parse yardım...

hatay00819.04.20116 cevap2.422 görüntüleme
2010'den beri22 mesaj
#1
arkadaşlar amacım sayfa kaynağının içindeki .mp4 dosyasını bulabilmek.
bunun için sayfayı doğru olarak parse etmem lazım.
aşağıdaki işlemlerle sayfa kaynağını indiriyorum.
string adres = "http://www.facebook.com/video/video.php?v=10150160611678542&oid=134174437194&comments";
HttpWebResponse cevap1 = null;
WebRequest istek = (WebRequest)HttpWebRequest.Create(adres);
cevap1 = (HttpWebResponse)istek.GetResponse();
StreamReader donenbilgiler = new StreamReader(cevap1.GetResponseStream());
string gelen = donenbilgiler.ReadToEnd();
int t1 = gelen.IndexOf("<html");
int t2 = gelen.Substring(t1).IndexOf("</html");
richTextBox1.Text = gelen.Substring(t1, t2);


buraya kadar herşey normal ancak indirdiğim sayfa kaynağına baktığım verilerle tarayıcıya sağ tıklayıp baktığım kaynaktaki veriler aynı değil
.mp4 uzantılı dosya yok ve indirdiğim kaynakta şöyle bir yazı gözüme çarptı:
"Üzgünüz, tarayıcını destekleyecek kadar iyi değiliz. Lütfen şu tarayıcılardan birisiyle bize kendini tanıt"
Evet arkadaşlar sorun bu yardımlarınızı bekliyorum.
Cevaplar
2007'den beri17 bin mesaj
#2
Ben olsam şöyle yapardım en basitinden :)

Sayfa kodunu alırdım
.mp4 terimini aratır ve oranın indeksinden önce gelen ilk http:// tarimine kadar olan aradaki veriyi alır adresi yakalamış olurdum :)

Tabi adresi bulmadan önce bazı unicode değerleri var onları da convert etmen gerekiyor ki adresi bulabilesin :)
hatay008 Konuyu açan
2010'den beri22 mesaj
#3
diyorum ya indirdiğim sayfa kodunun hepsini metin belgesine kopyalıyorum.
mp4 diye aratıyorum bulamıyor.
encoding classıyla alakalı bişşey olabilir mi acaba streamreader 2 parametreli fonksiyonunda var
2007'den beri17 bin mesaj
#4
Hmm. Veriyi bir webBrowser objesine aktarıp onun üzerinden kaynak kodu çekmeye çalış ondan sonra kaynağın farklı gelmesi düzelecektir muhtemelen. Bir de video'nun public olması gerekiyor sanırım...
hatay008 Konuyu açan
2010'den beri22 mesaj
#5
video public
dediğini denicem ama..
2006'den beri324 mesaj
#6
Tarayıcıya göre yönlendirme yapıyor. Senin tarayıcının bir adı olmadığı için yönlendirme yapamıyor. Doğal olarak video dosyasını vermiyor. webBrowser en doğrusu olacaktır.
hatay008 Konuyu açan
2010'den beri22 mesaj
#7
problem cozuldu:
webrequest yerine httpwebrequest sınıfından nesne olusturuyoruz ve bu nesnenin useragent değişkenine değer atıyoruz:
HttpWebRequest istek = HttpWebRequest.Create("url");
istek.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0b; Windows NT 5.1)";

Cevabını yaz

Cevap yazmak için giriş yap ya da üye ol. Eski forum kullanıcı adın ve parolanla girebilirsin.