Analisi HTML con i servizi Web XML di ASP.NET

Questo argomento è specifico di una tecnologia legacy. Servizi Web XML e client di servizi Web XML devono essere creati attualmente tramite Windows Communication Foundation.

Nel Web oggi è possibile trovare una quantità immensa di informazioni cui naturalmente è possibile accedere solo mediante un browser. I servizi Web creati utilizzando ASP.NET aiutano a migliorare la situazione fornendo una soluzione di analisi HTML che consente agli sviluppatori di analizzare il contenuto di una pagina HTML remota e di esporre i dati risultanti a livello di codice. Una volta ottenuta l'autorizzazione dall'autore del contenuto del sito Web e presupponendo che il layout del contenuto non cambi, l'analisi HTML può essere utilizzata per esporre servizi Web che i client possano utilizzare. Per ulteriori informazioni sull'analisi HTML, vedere Procedura: creare servizi Web che analizzano il contenuto di una pagina Web.

La compilazione di un servizio Web che analizza il contenuto di una pagina Web utilizza un modello diverso rispetto alla compilazione di un tipico servizio Web. Un servizio Web che analizza una pagina HTML viene implementato tramite la creazione di una descrizione del servizio che è un documento XML in WSDL (Web Services Description Language). All'interno della descrizione del servizio, gli elementi XML vengono aggiunti per specificare i parametri di input e i dati da restituire dalla pagina HTML analizzata.

I parametri di input possono essere passati al server Web se la pagina HTML analizzata accetta parametri che influiscono sul contenuto della pagina HTML restituita.

La specifica dei dati restituiti dalla pagina HTML analizzata avviene laddove si verifica la maggiorparte dell'implementazione, poiché si tratta del luogo in cui vengono specificate le istruzioni per analizzare il contenuto HTML. Per aggiungere elementi XML e quindi compilare un servizio Web che analizza una pagina HTML, uno sviluppatore deve avere una comprensione del layout di un documento XML scritto in WSDL. Per ulteriori informazioni sul WSDL, vedere le relative specifiche nel sito Web di W3C all'indirizzo http://www.w3.org/TR/wsdl/ (informazioni in lingua inglese).

I dati da restituire per una pagina HTML analizzata vengono espressi all'interno della descrizione del servizio utilizzando una serie di elementi XML che contengono espressioni regolari per analizzare porzioni specifiche di dati, fornendo un nome per ogni porzione di dati. L'espressione regolare di .NET Framework effettiva viene visualizzata in un elemento XMLmatch. Le espressioni regolari forniscono un'ampia notazione che consente di analizzare rapidamente grandi quantità di testo per cercare pattern di caratteri specifici. Per ulteriori informazioni circa la sintassi delle espressioni regolari di .NET Framework, vedere .NET Framework Regular Expressions.

Elemento <match>

L'elemento match può essere specificato con gli attributi seguenti:

Attributo Descrizione

name

Classe o nome della proprietà che rappresenta la porzione di dati restituita. Una classe proxy generata dallo strumento Wsdl.exe associa l'attributo del nome a una classe, se l'elemento XML match ha elementi figlio match. Il mapping degli elementi figlio match viene eseguito in una proprietà della classe.

Pattern

Pattern dell'espressione regolare da utilizzare per ottenere la porzione di dati. Per ulteriori informazioni circa la sintassi delle espressioni regolari di .NET Framework, vedere .NET Framework Regular Expressions.

ignoreCase

Specifica se l'espressione regolare deve essere eseguita in modo da fare distinzione tra maiuscole e minuscole. L'impostazione predefinita prevede la distinzione tra maiuscole e minuscole.

Repeats

Specifica il numero di valori che devono essere restituiti dall'espressione regolare, nel caso in cui l'espressione regolare abbia più corrispondenze sulla pagina HTML. Un valore di 1 consente di restituire solo la prima corrispondenza. Un valore di -1 consente invece di restituire tutte le corrispondenze. Un valore di -1 equivale a * in un'espressione regolare. Il valore predefinito è -1.

Group

Specifica un raggruppamento di corrispondenze correlate.

Capture

Specifica l'indice di una corrispondenza all'interno di un gruppo.

type

Le classi proxy generate utilizzando Wsdl.exe utilizzano l'attributo type come nome della classe restituita per un match che contiene elementi match figlio. Per impostazione predefinita, una classe proxy generata da Wsdl.exe imposta il nome della classe restituita sul nome specificato nell'attributo name.

Vedere anche

Attività

Procedura: creare servizi Web che analizzano il contenuto di una pagina Web

Riferimento

MatchAttribute Class
Strumento del linguaggio di descrizione dei servizi Web (Wsdl.exe)

Altre risorse

.NET Framework Regular Expressions
Creare servizi Web XML mediante ASP.NET