No tienes acceso a esta clase

隆Contin煤a aprendiendo! 脷nete y comienza a potenciar tu carrera

Aprende todo un fin de semana sin pagar una suscripci贸n 馃敟

Aprende todo un fin de semana sin pagar una suscripci贸n 馃敟

Reg铆strate

Comienza en:

2D
1H
1M
21S
Curso de Scrapy

Curso de Scrapy

Facundo Garc铆a Martoni

Facundo Garc铆a Martoni

Utilizando XPath en el sitio de la CIA

19/27
Recursos

Aportes 20

Preguntas 2

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad?

o inicia sesi贸n.

Paso a paso actualizado (08.01.2020):

El nuevo link para acceder al historical colletion es: https://www.cia.gov/readingroom/historical-collections

Por lo tanto, en consola ponemos:

scrapy shell "https://www.cia.gov/readingroom/historical-collections"

Una vez dentro del shell, ponemos:

response.xpath('//a[starts-with(@href, "collection") and (parent::h3|parent::h2)]/@href').getall()

Update: Estoy haciendo este proyecto el 08.01.2021 y ya en la p谩gina de la CIA hay definido un robot.txt. Ac谩 el link:

https://www.cia.gov/robots.txt

Este proyecto necesita al menos un texto de actualizaci贸n por lo de que el sitio de la CIA ya tiene robots.txt

Ahora si tienen el archivo robots.txt : https://www.cia.gov/robots.txt

Hice algunas comparaciones y propongo el siguiente modelo de busqueda ya que con el propuesto se pierden algunos links que estan dentro de una etiqueta <p> y para eliminar los links repetidos hacemos un cast a un set

set(response.css('a[href^=collection]::attr(href)').getall())
scrapy shell "https://www.cia.gov/readingroom/historical-collections"
response.xpath('//a[starts-with(@href, "collection") and (parent::h3|parent::h2)]/@href').getall()

Un dato interesante y curioso a fecha 23/01/2021 es que hay un articulo llamado 鈥淚ntelligence, Policy, and Politics: The DCI, the White House, and Congress鈥 que por alguna raz贸n la letra 鈥淚鈥 va a un articulo distinto que el resto del texto, para hacerme entender mejor dejo im谩genes:



La I en la im谩gen anterior est谩 sola, y en la siguiente im谩gen aparecen el resto



Y aqu铆 dejo el c贸digo html:


Como dato a destacar: EL link al que referencia la 鈥淚鈥 es un link a lo que creo que es un articulo de la versi贸n antigua de la web.

ya existe el archivo robots.txt de CIA
https://www.cia.gov/robots.txt

Actualizaci贸n XPath 02/01/2022

//div[@class = 鈥渇ield-item even鈥漖/h3/a/@href

Tambi茅n se puede usar la expresi贸n xpath

//div[@class="field-item even"]/*[self::h2 or self::h3]/a/@href

El paso a paso

En la p谩gina de la CIA https://www.cia.gov/library/readingroom/historical-collections

Y en la consola:

$ scrapy shell "https://www.cia.gov/library/readingroom/historical-collections"

Y ya dentro del entorno de Python

>>> response.xpath('//a[starts-with(@href, "collection") and (parent
::h3|parent::h2)]/@href').getall()

Tener en cuenta:

User-agent: Mediapartners-Google*
Disallow: /

User-agent: bingbot
Disallow: /

User-agent: msnbot
Disallow: /

User-agent: IsraBot
Disallow: /

User-agent: Orthogaffe
Disallow: /

User-agent: UbiCrawler
Disallow: /

User-agent: DOC
Disallow: /

User-agent: Zao
Disallow: /

User-agent: sitecheck.internetseer.com
Disallow: /

User-agent: Zealbot
Disallow: /

User-agent: MSIECrawler
Disallow: /

User-agent: SiteSnagger
Disallow: /

User-agent: WebStripper
Disallow: /

User-agent: WebCopier
Disallow: /

User-agent: Fetch
Disallow: /

User-agent: Offline Explorer
Disallow: /

User-agent: Teleport
Disallow: /

User-agent: TeleportPro
Disallow: /

User-agent: WebZIP
Disallow: /

User-agent: linko
Disallow: /

User-agent: HTTrack
Disallow: /

User-agent: Microsoft.URL.Control
Disallow: /

User-agent: Xenu
Disallow: /

User-agent: larbin
Disallow: /

User-agent: libwww
Disallow: /

User-agent: ZyBORG
Disallow: /

User-agent: Download Ninja
Disallow: /

User-agent: wget
Disallow: /

User-agent: grub-client
Disallow: /

User-agent: k2spider
Disallow: /

User-agent: NPBot
Disallow: /

User-agent: WebReaper
Disallow: /

User-agent: *
Disallow: /js/
Disallow: /preview/
Disallow: /*.js$
Disallow: /*.js.map$
Disallow: /*.json$
Sitemap: https://www.cia.gov/sitemap.xml
Sitemap: https://www.cia.gov/the-world-factbook/sitemap.xml
Host: https://www.cia.gov

Tambi茅n en la p谩gina del gobierno de mi pa铆s (M茅xico) no tiene robots.txt.

La Agencia Central de Inteligencia (CIA, por su sigla en ingl茅s) es una entidad independiente del Gobierno de Estados Unidos encargada de la recopilaci贸n, an谩lisis y uso de informaci贸n y servicios de inteligencia para asistir al presidente del pa铆s y sus asesores en la toma de decisiones relacionadas a la seguridad

Si alguien me pudiera ayudar con este error, gracias. No puedo usar el scrapy shell.

驴Como se actualiza scrapy 1.x a 2.x en Ubuntu 20.04 desde la terminal? Gracias

AFIP y aduana Argentina no tienen robots.txt

el mejor proyecto del curso genial !!