El analizador de base nakolesah.ru
¡Uf, atornille la nakolesah analizador imputable al Estado y apoderarse de la selección de neumáticos en el coche. A quién le importa - una referencia a la secuencia de comandos al final del post.
Algo en él tendrá que cambiar, realmente no me gusta la lógica de este trabajo, basado en los GET de peticiones (si el navegador se pone toda la información referente a la asp-script para la transferencia de diversos parámetros en el POST-petición). Yo POST sólo al final, y debemos tratar de duplicar el trabajo del navegador, pero el tiempo no se entiende todo.
No es como una muleta como una función de sustitución de los nombres de los modelos de automóviles. Al analizar nkolesah enfrenta con el problema (relevante sólo para las peticiones GET) de diferentes marcas de nombre y modificaciones en el coche de listas desplegables y la dirección de la página, tales como:
sub TransformModel ($ $) { my ($ cadena, $ car_model) = @ _; $ Car_model = ~ s / - / / g, si la marca ~ $ / Saab | Jaguar | Nissan | Honda | Citroen | MG | Mercedes | Mazda | Ford / i!; $ Car_model = ~ s / [- +] / _ / g, si la marca ~ $ / Citroen / i!; if ($ cadena = ~ / Nissan / i) { $ Car_model = ~ s/Z/350z/i; $ Car_model = ~ s / GT_R / GTR / i; } $ Car_model = 'navigaror_1 "si la marca $ = ~ m # # i Lincoln y $ car_model eq' Navigator '; $ Car_model = 'Du% D1% 81ato "si la marca $ = ~ m # # i Fiat y $ car_model = ~ / dusato / i; if ($ cadena = ~ / Chery / i) { $ Car_model = 'c_eastar' si $ car_model 'CrossEastar' eq; $ = $ Car_model marca. '_'. $ $ Car_model si car_model = ~ / kimo | q \ d / I?; } return $ car_model; }
Descarga completa toma alrededor de 12 horas en un modo secuencial (trabaja en una corriente, el cliente no necesita multi-threading, pero no tuve tiempo para fijarla para la diversión). Si alguien decide hacer la carga y análisis - por ejemplo, se les recomienda hacer cuatro copias de la escritura y romper la gama de marcas de coches en cuatro grupos, respectivamente (todos en la base de datos nakolesah 61 marca por el momento). Puede utilizar la descomposición listo, que es el código que he hecho:
# A continuación, si la marca de $ ~ / Rover |! FAW | Volkswagen | Ferrari | Jaguar | Smart | Suzuki | gas | Bentley | Peugeot | Pontiac | Honda | Maybach | vaz | Infiniti | Buick | Subaru / i; # A continuación, si la marca de $ ~ / Lancia |! Opel | Daihatsu | Hummer | Kia | Fiat | Nissan | Saturno | Mini | Hyundai | Renault | Citroen | Lincoln | Chevrolet | Dodge / i; # A continuación, si la marca de $ ~ / Chery |! Mazda | Ford | UAZ | Acura | Porsche | Lotus | Volvo | Toyota | Skoda | Cadillac | Scion | Saab | Mercurio | Daewoo / i; # A continuación, si la marca de $ ~ / Chrysler |! BMW | Isuzu | MG | Mercedes | GMC | Asiento | Maserati | Mitsubishi | Jeep | Lexus | Audi | Lifan | Geely / i;
En cada una de las cuatro copias que descomentar el rango apropiado, los archivos están mejor descrita de diferentes maneras, porque por defecto la salida va a un archivo llamado imya_skripta.xml (aunque se puede hacer si zpuske clave en la transferencia de archivos de salida).
En el camino, se skriptik para validar los resultados de la nakolesah.ru analizador, una vez más la belleza alegre de la cebada regulyarok:
m | <(\ w +) \ s \ w * =? "\ w *?"> \ s * </ \ 1> $ | ig una línea de etiquetas de los controles sobre la tenencia (si a todos la descarga), entiende las etiquetas con atributos y por fuera. Validador de resultados nakolesah.ru descarga se puede descargar, junto con el analizador.
Para la diversión, un poco las estadísticas sociales (tal vez cuando el tirón ponostalgirovat
):
- base de datos de red en formato XML (no hay líneas en blanco):
$ Wc-l nakolesah.ru_full_base_4.12.2009.xml 550.657 nakolesah.ru_full_base_4.12.2009.xml
- 577 modelos de coches
Según lo prometido, un enlace a la página de descarga capturador, analizador nakolesah.ru (salida de validación, también se encuentra en el archivo): + nakolesah.ru_parser Validator
¡Buena suerte!
Más sobre temas similares:
Filed under: Internet , Codificación |
Tags: nakolesah.ru , perl , analizador , programación , trabajo |
18 comentarios 


¡Buenos días! Al parecer, cambió el diseño y el tamaño que se analizan, no se puede corregir esta cuota / gratis! Gracias)
Tamaño ¿Qué es? Vamos a tomar una acción concreta de inmediato, por lo que será más fácil entender lo que estaba sucediendo.
el guión lleva unos modelos de autos grandes, pero los tamaños de las ruedas y los neumáticos adecuados que elige, como resultado de xml tiene la forma:
....
No puedo decir lo que era, ya que he correcta ejecución de toda la información.
He una redirección no pasa el barro, escribe:
El uso de un valor sin inicializar $ redir_url de concatenación (.) O una cadena en / home / digbox / data / www / digbox.ru / cgi-bin / nakolesah_ru_parser.pl la línea 152.
no ayudan a entender?
Inmediatamente la primera vez que arranque no pasa? Añadir a la línea 152 como sigue:
2
salida;
y quiero saber el resultado.
ofrece la siguiente:
1 | # | | 4 | 54 | pageRedirect | |%%% 2fselect 2ftiresbyauto 2facura%% 2fcl 2f2003 2f32i.aspx% |
Me di cuenta de la redirección URL identifica, pero no pasa
Bueno, no es difícil de arreglar. Sólo que no reconocen un enlace a una redirección, ya que la forma ha cambiado su fecha de emisión.
Se debe estar en la línea 150 reemplazar el patrón de búsqueda:
en
Muchas gracias funcionó)
y no hay prisa (no quería salir, mantiene la misma (
Lo más probable es que no sólo ha cambiado la forma de emisión de los enlaces, pero la información también se da en los neumáticos y discos de recuperación y tienen una gran cantidad de cambios en la función de análisis de la página.
Analizador ajustado pueden compartir, o base, o escribir en ellos ... a través de Skype:
lo que e-mail? y Asya
http://www.dimio.org/about~~V
Si alguien puede solucionar el analizador. Ayuda pzhl.
ICQ: 308037667
skype: viperstp
¿Puede alguien todavía compartir la información por qué no sacar los tamaños, lo que el código debe ser cambiado.
Por encima de las personas que dieron su contacto y escribió que todo se enderezó en el marco del actual. condiciones.
Hola, si alguien tiene un analizador de PHP, por favor siéntase libre para compartir y luego tener inmediatamente (((mi Asya 202.716 y luego Dle del motor (que nxn)