2015-07-13 11 views
7

Quando addestrando il mio crawler a raschiare una pagina di Yelp, ottiene tutte le informazioni senza che io faccia nulla, ma quando eseguo il crawler, l'indirizzo non viene riconosciuto, e non registra.L'esecuzione del crawler non ottiene gli stessi dati durante l'allenamento

+0

Hai inviato via email import.io supporto? Sembra che stia succedendo qualcosa di diverso sul lato server quando il crawler import.io va a prendere le informazioni, solo loro potrebbero sapere di cosa si tratta. Ad es .: yelp my richiede un cookie o qualcosa del genere. – CavemanDan

+0

@CavemanDan non c'è niente di sbagliato con l'importazione da quando l'ho fatto prima su yelp, ha solo bisogno di aggiungere manualmente i selettori xpath. –

risposta

1

dovresti usare xpath per selezionare cosa vuoi su yelp, l'ho già fatto prima per yelp e xpath è più preciso di un allenamento manuale.

8

Ottenere dati aziendali da Yelp

In questo caso vogliamo ottenere gli indirizzi per le aziende a San Francisco dal sito www.yelp.com.

Analisi del sito

Siamo in grado di ottenere un elenco di aziende che iniziano con la lettera “A” da questa pagina:

http://www.yelp.com/sm/san-francisco-ca-us/a/1 

Questa pagina directory ci dice che ci sono 42 pagine di risultati per "A" con un massimo di 80 risultati per pagina.

Questa è una buona notizia.

Creare un'API

ora sto andando a creare un'API per ottenere i dati dalla prima pagina e quindi utilizzare estratto di massa a passare attraverso un elenco di URL a tutte le 42 pagine.

usando la magia, è possibile generare un'API in pochi clic:

  1. Vai Magic.import.io
  2. Incolla l'URL della pagina di Yelp (link qui sotto)
  3. Click “Estrazione di dati”
  4. Fare clic su “Get API”
  5. Fare clic su “Copia questo i miei dati”

Ora abbiamo un'API!

(Si noti che se avete bisogno di un maggiore controllo su cosa includere o escludere dal API è possibile utilizzare un estrattore)

Generare un elenco di URL

per generare un elenco di URL che verrà ci permettono di ottenere dati da pagine da 1 a 42 ho intenzione di utilizzare un servizio esterno ospitato presso:

http://texttool.blogspot.co.uk/

Individuare il "generare l'elenco del numero s" strumento e generare un elenco di URL: estratto

http://www.yelp.com/sm/san-francisco-ca-us/a/1 
http://www.yelp.com/sm/san-francisco-ca-us/a/2 
http://www.yelp.com/sm/san-francisco-ca-us/a/3 
http://www.yelp.com/sm/san-francisco-ca-us/a/4 
http://www.yelp.com/sm/san-francisco-ca-us/a/5 
http://www.yelp.com/sm/san-francisco-ca-us/a/6 
http://www.yelp.com/sm/san-francisco-ca-us/a/7 
http://www.yelp.com/sm/san-francisco-ca-us/a/8 
http://www.yelp.com/sm/san-francisco-ca-us/a/9 
http://www.yelp.com/sm/san-francisco-ca-us/a/10 
http://www.yelp.com/sm/san-francisco-ca-us/a/11 
http://www.yelp.com/sm/san-francisco-ca-us/a/12 
http://www.yelp.com/sm/san-francisco-ca-us/a/13 
http://www.yelp.com/sm/san-francisco-ca-us/a/14 
http://www.yelp.com/sm/san-francisco-ca-us/a/15 
http://www.yelp.com/sm/san-francisco-ca-us/a/16 
http://www.yelp.com/sm/san-francisco-ca-us/a/17 
http://www.yelp.com/sm/san-francisco-ca-us/a/18 
http://www.yelp.com/sm/san-francisco-ca-us/a/19 
http://www.yelp.com/sm/san-francisco-ca-us/a/20 
http://www.yelp.com/sm/san-francisco-ca-us/a/21 
http://www.yelp.com/sm/san-francisco-ca-us/a/22 
http://www.yelp.com/sm/san-francisco-ca-us/a/23 
http://www.yelp.com/sm/san-francisco-ca-us/a/24 
http://www.yelp.com/sm/san-francisco-ca-us/a/25 
http://www.yelp.com/sm/san-francisco-ca-us/a/26 
http://www.yelp.com/sm/san-francisco-ca-us/a/27 
http://www.yelp.com/sm/san-francisco-ca-us/a/28 
http://www.yelp.com/sm/san-francisco-ca-us/a/29 
http://www.yelp.com/sm/san-francisco-ca-us/a/30 
http://www.yelp.com/sm/san-francisco-ca-us/a/31 
http://www.yelp.com/sm/san-francisco-ca-us/a/32 
http://www.yelp.com/sm/san-francisco-ca-us/a/33 
http://www.yelp.com/sm/san-francisco-ca-us/a/34 
http://www.yelp.com/sm/san-francisco-ca-us/a/35 
http://www.yelp.com/sm/san-francisco-ca-us/a/36 
http://www.yelp.com/sm/san-francisco-ca-us/a/37 
http://www.yelp.com/sm/san-francisco-ca-us/a/38 
http://www.yelp.com/sm/san-francisco-ca-us/a/39 
http://www.yelp.com/sm/san-francisco-ca-us/a/40 
http://www.yelp.com/sm/san-francisco-ca-us/a/41 
http://www.yelp.com/sm/san-francisco-ca-us/a/42 

Bulk

Ora è possibile utilizzare estratto di massa per ottenere i dati da ciascuno di questi URL in una sola volta.

Per fare questo:

  1. Vai alla scheda Configura il tuo Yelp API
  2. selezionare Estrai Bulk dall'elenco a discesa
  3. Incolla nella lista di 42 URL
  4. Fare clic su “Esegui Query "

Nota: è possibile che si verifichino alcune query non riuscite. Facendo clic sul testo "X URL non riusciti" puoi riprovare le query non riuscite.

Export

È ora possibile esportare questi dati in un foglio di calcolo, come HTML o JSON.

Ulteriore lettura

http://support.import.io/knowledgebase/articles/669784-getting-company-data-from-yelp

Problemi correlati