Парсер love.mail.ru (htmlagilitypack) - C#

Узнай цену своей работы

Формулировка задачи:

Всем добрый день. Есть проект парсинга love.mail.ru (http://love.mail.ru/search.phtml?ia=...0_0_0_0&form=1) Пришел в тупик. Задача : Спарсить ID людей .(Используюя

htmlagilitypack

) Кто-то скажет: Можно регулярками - НЕТ, учусь htmlagilitypack Проблема: Начинаю парсить и парсится нормально,но с мусором (да да ,я криво составляю запрос и у меня парсит ID не с ссылки,а со скрипта. ) Опять же - мусор можно убрать,но как спарсить ссылку? Картинка Всем спасибо кто пытается помочь. _exp10der_ если ты читаешь это,то спасибо что помогаешь новичкам
using HtmlAgilityPack;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using xNet.Net;
 
namespace WindowsFormsApplication6
{
    public partial class Form1 : Form
    {
 
        CookieDictionary cookie = new CookieDictionary();
        HttpRequest request = new HttpRequest();
 
        public Form1()
        {
            InitializeComponent();
            request.Cookies = cookie;
        }

        private void button1_Click(object sender, EventArgs e)
        {
           RTB.Clear();
           Go_Pars();

        }
 
        public void Go_Pars() {
 
            string zapros = @"http://love.mail.ru/search.phtml?ia=F&lf=N&af=18&at=80&t=a&s_c=0_0_0_0&form=1";
            string content = "";
            request.UserAgent = HttpHelper.IEUserAgent();
 
            // Отправляем запрос.
            request.Referer = HttpHelper.UrlEncode(zapros);
            HttpResponse response = request.Get(zapros);
            // Принимаем тело сообщения в виде строки.
            content = response.ToString();
 
            HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();
            HtmlNodeCollection nodes;
            doc.LoadHtml(content);
            //Парсим страницу на блоки со ссылками
            //   nodes = doc.DocumentNode.SelectNodes("//div[@class='serp-list']//span[@class='serp-url__item']//a[1]");
            //  href
            //  nodes = doc.DocumentNode.SelectSingleNode("//a").GetAttributeValue("href", "");
            nodes = doc.DocumentNode
                .SelectNodes("//*[@class='tiles-list js-search-results-container']");        //.Attributes["href"];
            int count = 0;
            int pos = 0;
            if (nodes == null)
                return;
            foreach (HtmlNode node in nodes)
            {
                count++;
               RTB.AppendText(count + ". " + node.InnerText + "\n");
              
                pos += node.InnerText.Length + 1 + (Convert.ToString(count) + ". ").Length;
            }
 
        }

    }
}

Решение задачи: «Парсер love.mail.ru (htmlagilitypack)»

textual
Листинг программы
HtmlDocument doc = new HtmlDocument();
            doc.LoadHtml(html);

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 4.133 из 5