Pregunta

Si usted visita este vincular en este momento, es probable que obtener un error de VBScript.

Por otro lado, si usted visita este enlace primera y después el enlace de arriba (en la misma sesión), la página llega a través de.

La forma en que esta aplicación está configurado, la primera página está destinado a servir como un marco en la segunda página (principal). Si hace clic en un poco, verá cómo funciona.

Mi pregunta: ¿Cómo puedo raspar la primera página con Python? He intentado todo lo que se pueda imaginar - urllib, urllib2, mecanizar - y todo lo que consigo es de 500 errores o tiempos de espera.

Sospecho que las respuestas recae en mecanizar, pero mi mecanizar-fu no es suficiente para romper esto. ¿Alguien puede ayudar?

¿Fue útil?

Solución

Siempre se reduce al modelo de solicitud / respuesta. Sólo tienes que diseñar una serie de peticiones http tales que se obtiene las respuestas deseadas. En este caso, también es necesario que el servidor para tratar cada solicitud como parte de la misma sesión. Para hacer eso, usted tiene que averiguar cómo el servidor realiza un seguimiento de las sesiones. Podría ser un número de cosas, de las galletas a las entradas ocultas para formar acciones, datos de correos, o cadenas de consulta. Si tuviera que adivinar que había puesto mi dinero en una cookie en este caso (no he comprobado los enlaces). Si esto es cierto, se necesita enviar la primera solicitud, guardar la cookie a volver, y luego enviar esa galleta junto con la segunda petición.

También podría ser que la página inicial tendrá botones y enlaces que se llega a la segunda página. Esos enlaces tendrán algo así como <A href="http://cad.chp.ca.gov/iiqr.asp?Center=RDCC&LogNumber=0197D0820&t=Traffic%20Hazard&l=3358%20MYRTLE&b="> donde una gran cantidad de la gobbedlygook es generado por la primera página.

La parte "Center=RDCC&LogNumber=0197D0820&t=Traffic%20Hazard&l=3358%20MYRTLE&b=" codifica alguna información de sesión que debe llegar desde la primera página.

Y, por supuesto, puede ser que incluso tenga que hacer las dos cosas.

Otros consejos

También puede intentar BeautifulSoup además de mecanizar. No soy positivo, pero debe ser capaz de analizar el DOM hacia abajo en la página enmarcada.

Tamper Data para ser un plugin bastante útil cuando estoy escribiendo raspadores.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top