Articles of mecanizar

Python, Mechanize – solicitud rechazada por robots.txt incluso después de set_handle_robots y add_headers

He creado un rastreador web que obtiene todos los enlaces hasta el primer nivel de la página y de ellos obtiene todos los enlaces y el texto más los enlaces de imágenes y alt. Aquí está el código completo: import urllib import re import time from threading import Thread import MySQLdb import mechanize import readability […]

¿Cómo hacer que un script espere dentro de una iteración hasta que se restablezca la conexión a Internet?

Tengo un código de raspado dentro de un bucle for , pero tardaría varias horas en completarse, y el progtwig se detiene cuando se interrumpe mi conexión a Internet. Lo que (creo que) necesito es una condición al comienzo del raspador que le dice a Python que siga intentando en ese punto. Intenté usar la […]

Se anuló la conexión urlopen de Python – error urlopen

Tengo algún código que utiliza mecanizar y hermoso para la web que raspa algunos datos. El código funciona bien en una máquina de prueba, pero la máquina de producción está bloqueando la conexión. El error que recibo es: urlopen error [Errno 10053] An established connection was aborted by the software in your host machine He […]

Utilice mecanizar para iniciar sesión en megaupload

Estoy intentando usar el siguiente código para iniciar sesión en megaupload. Mi pregunta es, ¿cómo puedo iniciar sesión correctamente? Imprimo la URL actual al final del código, pero cuando ejecuto el script, devuelve www.megaupload.com. import mechanize import cookielib from BeautifulSoup import BeautifulSoup import html2text # Browser br = mechanize.Browser() # Cookie Jar cj = cookielib.LWPCookieJar() […]

Selección de un campo de texto sin nombre en una forma de mecanizar (python)

Así que estoy haciendo un progtwig para convertir por lotes las direcciones de las calles en coordenadas gps usando mecanizar y python. Esta es mi primera vez usando mecanizar. Puedo seleccionar el formulario (“form2 ‘) en la página. Sin embargo, el cuadro de texto del formulario no tiene nombre. ¿Cómo selecciono el cuadro de texto […]

Problema de encoding al descargar HTML usando mecanizar y Python 2.6

browser = mechanize.Browser() page = browser.open(url) html = page.get_data() print html Muestra algunos personajes extraños. Supongo que es una cadena UTF-8 pero Python no lo sabe y no puede mostrarla correctamente. ¿Cómo puedo convertir esta cadena a una cadena Unicode como u = u’test’

Mecanizar en Python: la redirección no funciona después de enviar

Acabo de empezar a usar mecanizar en Python y ya estoy teniendo algunos problemas. Busqué en StackOverflow y en Google, y he visto a personas decir que la documentación es excelente y que debería ser fácil para que funcione, pero creo que no sé cómo buscar esa documentación, ya que todo puedo encontrar ejemplos de […]

Python Mechanize: ¿cómo agregar un encabezado en una sola llamada .open ()?

Estoy tratando de evitar un determinado servicio sin tener una API y decidí probar Mecanizar (normalmente uso urllib) ¿Cómo agrego un encabezado específico para una llamada open ? ¿O hay una manera de construir una instancia de Solicitud con sus propios encabezados, y luego hacer que mi instancia de mechanize.Browser maneje? browser = mechanize.Browser() headers […]

Web Scraper para formas dinámicas en python

Estoy tratando de llenar el formulario de este sitio web http://www.marutisuzuki.com/Maruti-Price.aspx . Se compone de tres listas desplegables. Uno es el modelo del automóvil, el segundo es el estado y el tercero es la ciudad. Los dos primeros son estáticos y el tercero, la ciudad se genera dinámicamente según el valor del estado, se ejecuta […]

Enviando un formulario en mecanizar.

Tengo problemas para enviar el resultado de un envío de formulario (puedo enviar un formulario, pero no puedo enviar el formulario en la página que sigue a la primera). Yo tengo: browser = mechanize.Browser() browser.set_handle_robots(False) browser.open(‘https://www.example.com/login’) browser.select_form(nr=0) browser.form[‘j_username’] = ‘username’ browser.form[‘j_password’] = ‘password’ req = browser.submit() Esto funciona, como resultados de print req en ` […]