Acest articol este un articol oglindă al traducerii automate, vă rugăm să faceți clic aici pentru a sări la articolul original.

Vedere: 29703|Răspunde: 2

[WinForm] Folosește CefSharp pentru a accesa site-uri web în C#

[Copiază linkul]
Postat pe 02.04.2019 20:31:40 | | | |
De fapt, vreau să folosesc CefSharp pentru a accesa paginile site-ului și apoi să preiau codul sursă html pentru analiză; dacă folosești controlul încorporat al browserului web, pot apărea unele erori incompatibile cu js.

CefSharp îți permite să integrezi Chromium în aplicații .NET. Este un wrapper .NET ușor în jurul Chromium Embedded Framework (CEF) de Marshall A. Greenblatt. Aproximativ 30% din legături sunt scrise în C++/CLI, iar majoritatea codului de aici este în C#. Poate fi folosit din C# sau VB sau orice alt limbaj CLR. CefSharp oferă implementări ale controlului browserelor web WPF și WinForms.

Adresă GitHub:Autentificarea cu hyperlink este vizibilă.

În primul rând, folosesc VS pentru a crea un nou proiect winform cu următorul mediu:

  • . .NET framework versiunea: 4.6.2
  • Visual Studio 2013: Și mai sus, folosesc vs2017 aici



Comanda nuget este următoarea:

După finalizarea execuției, programul adaugă automat pachete de dependență după cum urmează:

<?xml version="1.0" encoding="utf-8"?>
<packages>
  <pachet id="cef.redist.x64" versiune="3.3578.1870" targetFramework="net462" />
  <pachet id="cef.redist.x86" versiune="3.3578.1870" targetFramework="net462" />
  <pachet id="CefSharp.Common" versiunea="71.0.2" targetFramework="net462" />
  <pachet id="CefSharp.WinForms" versiunea="71.0.2" targetFramework="net462" />
</packages>

După finalizarea instalării, proiectul de compilare va raporta următoarea eroare:

CefSharp.Common conține resurse negestionate, setează proiectul și platforma de soluții pe x86 sau x64. Alternativ, pentru suportul AnyCPU, veziAutentificarea cu hyperlink este vizibilă.

Am văzut o soluție pe Internet care spune să schimbi platforma activă a soluției în x86 (CEF nu se poate adapta la x86 | x64, trebuie să alegi o țintă), iar platforma țintă trebuie să fie, de asemenea, consecventă cu platforma de soluție.
Începând cu CefSharp 51, poți folosi CefSharp cu AnyCPU, dar nu funcționează singur pentru că trebuie să faci unele modificări în 2 fișiere specifice.

Conform metodei internauților, ar trebui rezolvat, nu am încercat, de fapt cef suportă deja AnyCPU, dar trebuie configurat, schema de configurare este următoarea:

1: Mai întâi click dreapta pe proiect, dezinstalează soluția, editează fișierul .csproj al proiectului și adaugă-l la <PropertyGroup>primul nod:



2: După finalizarea adăugării, reîncarcă proiectul și adaugă următoarea configurație în app.config:



3: Înainte de a apela Cef.Initialize, configurați calea de pornire a browserului cu următorul cod:

Referință soluție:Autentificarea cu hyperlink este vizibilă.

Codul finalizat este următorul:


Rulează proiecte:


Resurse:https://ourcodeworld.com/article ... informs-application

(Sfârșit)







Precedent:java primește tipul proprietății Obiect, numele proprietății și valoarea proprietății
Următor:Tutorial de descărcare și instalare offline Visual Studio 2019
Postat pe 02.04.2019 20:46:35 |
Susține proprietarul, mulțumesc că ai împărtășit.
Postat pe 08.04.2019 23:44:58 |
Am fost atent la CefSharp, dar nu am un exemplu mai bun și mai simplu de înțeles. Mulțumesc că ai împărtășit
Disclaimer:
Tot software-ul, materialele de programare sau articolele publicate de Code Farmer Network sunt destinate exclusiv scopurilor de învățare și cercetare; Conținutul de mai sus nu va fi folosit în scopuri comerciale sau ilegale, altfel utilizatorii vor suporta toate consecințele. Informațiile de pe acest site provin de pe Internet, iar disputele privind drepturile de autor nu au legătură cu acest site. Trebuie să ștergi complet conținutul de mai sus de pe calculatorul tău în termen de 24 de ore de la descărcare. Dacă îți place programul, te rugăm să susții software-ul autentic, să cumperi înregistrarea și să primești servicii autentice mai bune. Dacă există vreo încălcare, vă rugăm să ne contactați prin e-mail.

Mail To:help@itsvse.com