Gjest Slettet+98172347 Skrevet 16. oktober 2007 Del Skrevet 16. oktober 2007 Hvordan kan jeg hente informasjon fra andre nettsider til mitt program? Jeg ønsker å skrive et program som henter aksjekurser på norske aksjer. Det spiller ingen rolle for meg om det skrives i C#, VB eller ASP. Jeg behersker alle disse variantene. Noen som har gjort noe lignende eller har tips? Lenke til kommentar
Manfred Skrevet 16. oktober 2007 Del Skrevet 16. oktober 2007 System.Net.WebClient... Lenke til kommentar
Gjest Slettet+98172347 Skrevet 16. oktober 2007 Del Skrevet 16. oktober 2007 Takk for tips. Jeg har imidlertid støtt på et lite problem. Se kode nedenfor. Hvis jeg kjører programmet i debug og hopper gjennom hver eneste linje gang på gang så får jeg fyllt opp tekstfilen med aksjeticker og aksjenavn. Akkurat som jeg ønsker. Men dersom jeg kjører programmet uten noen debugging så blir filen tom. Hva er det som ikke stemmer her? Ligger sikkert rett foran nesen min. using System; using System.Net; using System.IO; using System.Collections.Generic; using System.Text; namespace WebClient { class Program { static void Main(string[] args) { if (args == null || args.Length == 0) { throw new ApplicationException("Specify the URI of the resource to retrieve."); } System.Net.WebClient client = new System.Net.WebClient(); client.Headers.Add("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.0.3705;)"); Stream data = client.OpenRead(args[0]); StreamReader reader = new StreamReader(data); StreamWriter sw = new StreamWriter("c:\\testFile.txt"); while (reader.Peek() >= 0) { string s = reader.ReadLine(); string str = ""; int first = s.IndexOf("paper="); if (first > 0) { int last = s.IndexOf(".OSE", first); if (last > 0) { str = s.Substring(first + 6, last - first - 6); str = str.Trim(); } } int first2 = s.IndexOf(".OSE"); if (first2 > 0) { int last2 = s.IndexOf("</a>", first2); if (last2 > 0) { string str2 = s.Substring(first2 + 6, last2 - first2 - 6); str2 = str2.Trim(); sw.WriteLine("{0} : {1}", str, str2); } } } sw.Close(); data.Close(); reader.Close(); } } } Lenke til kommentar
Manfred Skrevet 16. oktober 2007 Del Skrevet 16. oktober 2007 Hvorfor tumler du med en StreamWriter og slikt? Hva er plutselig galt med WebClient.DownloadFile() ? Lenke til kommentar
Gjest Slettet+98172347 Skrevet 16. oktober 2007 Del Skrevet 16. oktober 2007 Vet ikke Forslag og forbedringer mottas med takk. Det jeg er ute etter er å lese denne siden: http://hopey.netfonds.no/kurs.php Så må jeg gå gjennom den å få tak i Navn (1.kolonne) og Ticker (2.kolonne). Resultatet vil jeg ha skrevet til en tekstfil. En linje per selskap. Lenke til kommentar
GeirGrusom Skrevet 18. oktober 2007 Del Skrevet 18. oktober 2007 Ser ut som Ctrl+C Ctrl+V kode Men uansett, det du skal se etter er først er <pre class="marg" style="font-family: courier;"> og neste </pre> Informasjonen du er ute etter ligger i mellom der. Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå