PHP - Scraping web a una pagina .aspx con simple html dom

 
Vista:
sin imagen de perfil
Val: 27
Ha aumentado su posición en 5 puestos en PHP (en relación al último mes)
Gráfica de PHP

Scraping web a una pagina .aspx con simple html dom

Publicado por dave (13 intervenciones) el 05/07/2019 15:01:13
Que tal este es mi segundo post con una tema nuevo voy ya varios dias intentando hacerlo y esta complicado la verdad no encuentro manera de extraer esta informacion.
el punto es que trabajo haciendo scraping web estoy ahora utilizando simple html dom por que me resulta muy practico pero recientemente encontre algunos puntos compicados como por ejemplo este que es el mas dificil una pagina con una lista hecha con .aspx donde esta lo complicado.... que la lista no la encuentra el buscador como suele hacerlo con simple html dom.
ahora paro a mostrar lo que explico para un mayor entendimiento:

1

como ven en la pagina hay una lista de inmuebles y la pagina tiene terminacion .aspx ahora cuando entro en inspeccionar la pagina esta ahi la lista pero cuando busco con el simple html dom no la encuentro... ahora bien cuando entro en ver codigo fuente no esta tampoco cuando hago un scraping general de la pagina osea bajar todo la pagina no esta tal informacion alguna sugerencia ayuda porfavor se agradeceria mucho...

para terminar lo q necesito extraer es la informacion de la lista de inmuebles ya que cada cuadro tiene un link q lleva a la vista detallada de cada inmueble una vez entras en la vista detallada ya se puede extraer la informacion ya hice ese trabajo lo que ahora estoy intentando hacer es obtener los links para asi poder hacer un trabajo mas dinamico ahora paso el codigo del scraping por pagina...

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
<?php
   require 'simple_html_dom.php';
 
   $url = 'http://www.remax.bo/Terreno-En-Venta-Sacaba-Chapare_120020002-232?LFPNNSource=Search&cKey=120020002-232';
 
   $html = file_get_html($url);
 
 
   $posts = $html->find('div[class=listing-full mm-page mm-slideout]');
 
 
   foreach ($posts as $post) {
 
 
       /**$link = $post->find('div a', 0); 
    $a = $link->attr['href']; 
    $title = $link->innertext;*/
 
    $titulo = $post->find('div[class=titlebar-listfull-h1] h1', 0);
 
    $precio = $post->find('div[class=key-price-div] a', 0);
 
    $zona = $post->find('div[class=key-data] div', 0);
 
    $telefono = $post->find('div[class=contact-popup-list] a', 2)->attr['href'];
 
 
 
    $link = $post->find('div img', 6);
    $img1 = $link->attr['src'];
 
    $link = $post->find('div img', 8);
    $img2 = $link->attr['src'];
 
    $link = $post->find('div img', 10);
    $img3 = $link->attr['src'];
 
    $link = $post->find('div img', 12);
    $img4 = $link->attr['src'];
 
    $link = $post->find('div img', 14);
    $img5 = $link->attr['src'];
 
    $link = $post->find('div img', 16);
    $img6 = $link->attr['src'];
 
 
    $sup_const = $post->find('div[class=attributes-data-row] div', 0);
    $sup = $post->find('div[class=attributes-data-row] div', 0);
 
 
 
 
 
    $coord = $post->find('div[class=googlemap-office] script', 1);
 
 
    preg_match('/var lat = (.*?);/', $coord, $lat_matches);
    preg_match('/var lng = (.*?);/', $coord, $lng_matches);
 
    //echo $lat_matches[1]; 
    //echo $lng_matches[1];  
 
 
 
 
 
 
 
 
 
    echo "<table border='2'>";
    echo "<tr>";
    echo "<td>",$titulo,"\n","</td>";
    echo "</tr>";
    echo "<tr>";
    echo "<td>",$precio,"\n","</td>";
    echo "</tr>";
    echo "<tr>";
    echo "<td>",$zona,"\n","</td>";
    echo "</tr>";
    echo "<tr>";
    echo "<td>",$sup_const,"\n","</td>";
    echo "</tr>";
    echo "<tr>";
    echo "<td>",$sup,"\n","</td>";
    echo "</tr>";
    echo "<tr>";
    echo "<td>",$telefono,"\n","</td>";
    echo "</tr>";
    echo "<tr>";
    echo "<td>",$lng_matches[1],"\n","</td>";
    echo "</tr>";
    echo "<tr>";
    echo "<td>",$lat_matches[1],"\n","</td>";
    echo "<tr>";
    echo "<td>",$img1,"\n","</td>";
    echo "</tr>";
    echo "<tr>";
    echo "<td>",$img2,"\n","</td>";
    echo "</tr>";
    echo "<tr>";
    echo "<td>",$img3,"\n","</td>";
    echo "</tr>";
    echo "<tr>";
    echo "<td>",$img4,"\n","</td>";
    echo "</tr>";
    echo "<tr>";
    echo "<td>",$img5,"\n","</td>";
    echo "</tr>";
    echo "<tr>";
    echo "<td>",$img6,"\n","</td>";
    echo "</tr>";
    echo "</tr>";
 
    echo "</table>";
 
 
   }
?>

este es el codigo para extraer ahora bien tambien en base a este se puede obtener las lista pero no extrae nada como explique arriba no esta la lista..
aca les dejo el link de la pagina para que le den un vistaso:
http://www.remax.bo/PublicListingList.aspx?SelectedCountryID=120#mode=gallery&tt=261&cr=2&mpts=19426&pt=19426&cur=USD&sb=PriceDecreasing&page=1&sc=120&rl=2803&lsgeo=2803,0,0,0&sid=e1083e16-9f2d-4c67-bab4-45bdb9ec1b0a

aca les dejo el link de la pagina... agradeceria una ayuda algo en lo q no pense o pase por alto gracias...
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder