Ejemplo n.º 1
0
        public void parse_twitter()
        {
            const string address = "http://twitter.com/skysportsfl/followers/";

            var webClient = new WebClient();

            webClient.Headers.Add("cookie",
                                  "lang=en-gb; guest_id=v1%3A137337600960092466; __utma=43838368.517491664.1373376012.1375298648.1375367885.10; __utmz=43838368.1375298648.9.8.utmcsr=myxi.co|utmccn=(referral)|utmcmd=referral|utmcct=/; __utmv=43838368.lang%3A%20en; twll=l%3D1375367981; remember_checked=1; remember_checked_on=1; external_referer=\"OTZIBTkFw3v0VTPNOWsL6Q==|0\"; __utmb=43838368.1.10.1375367885; auth_token=4a3b1bfbf0a104e0e01d4f884eb5b86b68972515; secure_session=true; _twitter_sess=BAh7CiIKZmxhc2hJQzonQWN0aW9uQ29udHJvbGxlcjo6Rmxhc2g6OkZsYXNo%250ASGFzaHsABjoKQHVzZWR7ADoPY3JlYXRlZF9hdGwrCKCEVzpAAToOcmV0dXJu%250AX3RvIi5odHRwczovL3R3aXR0ZXIuY29tL1NreVNwb3J0c0ZML2ZvbGxvd2Vy%250AczoHaWQiJTMzOTMxODA3OTllOGRjYTI3OGRlZTg2MDg0OThmZDg0Ogxjc3Jm%250AX2lkIiUyNjk3MWZkODY5ODg4MzBiZmQyNWJlNzYxODA0M2U3MA%253D%253D--1e1015aadd109ffcb0d3848ea85e54b0843c94f7");

            var webPage = webClient.DownloadString(address);

            var htmlParser = HtmlParser.Create();
            var html       = htmlParser.Parse(webPage);

            Assert.True(webPage.Contains("Followers"));

            var names = html
                        .HasClass("stream-container")
                        .HasClass("username")
                        .Where(n => n.ToText() != "@");

            foreach (var name in names)
            {
                Console.WriteLine(name.ToText());
            }
        }
Ejemplo n.º 2
0
        public void br_gives_a_newline()
        {
            const string htmlString =
                "<span>Line1<br>Line2</span>";

            var htmlParser = HtmlParser.Create();
            var html       = htmlParser.Parse(htmlString);

            var result = html.ToText();

            Assert.Equal(2, result.Split('\n').Count());
        }
Ejemplo n.º 3
0
        public static void RegisterKeywordIndexing(IKeywordsIndexer indexer)
        {
            var htmlParser = HtmlParser.Create();

            indexer
            .Entity <BlogEntryData>()
            .Index(entry => entry.Title)
            .Index(entry => entry.Author)
            .Index(entry => htmlParser.Parse(entry.Summary).ToText())
            .Index(entry => htmlParser.Parse(entry.Content).ToText())
            .ForEach(entry => entry.Tags,
                     tagBuilder => tagBuilder.Index(tag => tag.Title));
        }
Ejemplo n.º 4
0
        static void Exec(
            string htmlString,
            string name,
            string value,
            string expected)
        {
            var sut = HtmlParser.Create();

            var html = sut.Parse(htmlString).ToArray();

            html.Attr(name, value);

            Assert.Equal(expected, html.ToHtml());
        }
Ejemplo n.º 5
0
        public void inline_elements_on_same_line()
        {
            const string htmlString =
                "<span>Line1 <b>Line2</b></span>";

            var htmlParser = HtmlParser.Create();
            var html       = htmlParser.Parse(htmlString);

            var result = html.ToText();

            Console.Write(result);

            Assert.Equal(1, result.Split('\n').Count());
        }
        static IEnumerable <string> Exec(
            string htmlString,
            string attributeName,
            params string[] expected)
        {
            var sut = HtmlParser.Create();

            var html   = sut.Parse(htmlString).ToArray();
            var result = html.Attr(attributeName).ToArray();

            Assert.Equal(expected, result);

            return(result);
        }
Ejemplo n.º 7
0
        static IEnumerable <IHtmlNode> Exec(
            string htmlString,
            Func <HtmlElement, bool> isMatch,
            string expected)
        {
            var sut = HtmlParser.Create();

            var html   = sut.Parse(htmlString).ToArray();
            var result = html.Query(isMatch).ToArray();

            Assert.Equal(expected, result.ToHtml());

            return(result);
        }
Ejemplo n.º 8
0
        static IEnumerable <IHtmlNode> Exec(
            string html,
            int expectedCount = 0)
        {
            var sut = HtmlParser.Create();

            var result = sut.Parse(html).ToArray();

            Assert.NotNull(result);
            Console.Write(result.ToHtml());

            Assert.Equal(expectedCount, result.Count());

            return(result);
        }