Я на самом деле хочу использовать CefSharp для доступа к страницам сайта, а затем получить исходный код HTML для анализа, если использовать встроенный контроль WebBrowser, могут быть ошибки, несовместимые с js.
CefSharp позволяет встраивать Chromium в .NET-приложения. Это лёгкий .NET-оберточный интерфейс вокруг Chromium Embedded Framework (CEF) Маршалла А. Гринблатта. Около 30% привязок написаны на C++/CLI, и большая часть кода здесь — на C#. Он может использоваться на C#, VB или любом другом языке CLR. CefSharp предоставляет реализации управления веб-браузерами WPF и WinForms. Адрес на GitHub:Вход по гиперссылке виден.
Во-первых, я использую VS для создания нового проекта winform в следующей среде:
- . .NET Framework версия: 4.6.2
- Visual Studio 2013: И выше, я использую здесь vs2017
Команда nuget выглядит следующим образом:
После завершения выполнения программа автоматически добавляет пакеты зависимостей следующим образом:
<?xml version="1.0" encoding="utf-8"?> <packages> <package id="cef.redist.x64" version="3.3578.1870" targetFramework="net462" /> <package id="cef.redist.x86" version="3.3578.1870" targetFramework="net462" /> <package id="CefSharp.Common" version="71.0.2" targetFramework="net462" /> <package id="CefSharp.WinForms" version="71.0.2" targetFramework="net462" /> </packages> После завершения установки проект компиляции сообщит о следующей ошибке:
CefSharp.Common содержит неуправляемые ресурсы, установите ваш проект и платформу решения на x86 или x64. Альтернативно, для поддержки AnyCPU см.Вход по гиперссылке виден. Я видел решение в интернете, где нужно изменить активную платформу решения на x86 (CEF не может адаптироваться к x86 | x64, нужно выбрать цель), и целевая платформа должна быть согласована с платформой решения.
Начиная с CefSharp 51, можно использовать CefSharp с любым процессором, но он не работает в одиночку, потому что нужно внести изменения в два конкретных файла. Согласно методу пользователей сети, это должно быть решено, я не пробовал, на самом деле cef уже поддерживает AnyCPU, но его нужно настроить, схема конфигурации следующая:
1: Сначала кликнуть правой кнопкой мыши по проекту, удалить решение, отредактировать файл .csproj проекта и добавить его в <PropertyGroup>первый узел:
2: После завершения добавления перезагрузите проект и добавьте следующую конфигурацию в app.config:
3: Перед вызовом Cef.Initialize настройте путь запуска браузера следующим кодом:
Ссылка на решение:Вход по гиперссылке виден.
Завершённый код выглядит следующим образом:
Запускайте проекты:
Ресурсы:https://ourcodeworld.com/article ... informs-application
(Конец)
|