Nano Hash - криптовалюты, майнинг, программирование

WebRequest с использованием Mozilla Firefox

Мне нужно иметь доступ к HTML-странице Facebook, чтобы извлечь из нее некоторые данные. Итак, мне нужно создать файл WebRequest.

Пример:

Мой код хорошо работал для других сайтов, но для Facebook я должен войти в систему, чтобы получить доступ к HTML.

Как я могу использовать данные Firefox для создания страницы WebRequest для Facebook?

Я пробовал это:

List<string> HTML_code = new List<string>();
WebRequest request = WebRequest.Create(URL);
using (WebResponse response = request.GetResponse())
using (StreamReader stream = new StreamReader(response.GetResponseStream()))
{
    string line;
    while ((line = stream.ReadLine()) != null)
    {
        HTML_code.Add(line);
    }
}

... но полученный HTML-код - это HTML-код домашней страницы Facebook, когда я не вошел в систему.


Ответы:


1

Если вы пытаетесь получить количество лайков со страницы Facebook, вы можете использовать Facebook's Graph. Служба API. Просто будьте проще, это то, что я в основном сделал в коде:

  1. Получить данные страницы Facebook. В этом случае я использовал данные страницы Coke, так как это был пример из списка FB.
  2. Разберите возвращенный Json с помощью Json.Net. Есть и другие способы сделать это, но этот упрощает задачу, и вы можете получить Json.Net по адресу Codeplex. Документация, которую я искал для своего кода, была взята из этого страница в документах. Их документация также поможет вам разобрать и сериализовать еще больше Json, если вам это нужно.

Тогда это в основном переводится в этот код. Просто обратите внимание, что я не использовал всю причудливую обработку исключений, чтобы упростить ее, поскольку использование сети не всегда надежно! Также не забудьте включить в свой проект библиотеку Json.Net!

Использование:

using System.IO;
using System.Net;
using Newtonsoft.Json.Linq;

Код:

string url = "https://graph.facebook.com/cocacola";
WebClient client = new WebClient();
string jsonData = string.Empty;

// Load the Facebook page info
Console.WriteLine("Connecting to Facebook...");
using (Stream data = client.OpenRead(url))
{
    using (StreamReader reader = new StreamReader(data))
    {
        jsonData = reader.ReadToEnd();
    }
}

// Get number of likes from Json data
JObject jsonParsed = JObject.Parse(jsonData);
int likes = (int)jsonParsed.SelectToken("likes");

// Write out the result
Console.WriteLine("Number of Likes: " + likes);
01.08.2012
Новые материалы

Кластеризация: более глубокий взгляд
Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

Как написать эффективное резюме
Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

Как я автоматизирую тестирование с помощью Jest
Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..