Intenté Python BeautifulSoup y Phantom JS: TODAVÍA no puede raspar sitios web
Es posible que haya visto mis frustraciones desesperadas en las últimas semanas aquí. He estado recogiendo algunos datos del tiempo de espera y todavía no puedo obtener datos de estos dos sitios
Al principio probé BS4 para Python. Ejemplo de código a continuación para HCA Virgina
from BeautifulSoup import BeautifulSoup
import requests
url = 'http://hcavirginia.com/home/'
r = requests.get(url)
soup = BeautifulSoup(r.text)
wait_times = [span.text for span in soup.findAll('span', attrs={'class': 'ehc-er-digits'})]
fd = open('HCA_Virginia.csv', 'a')
for w in wait_times:
fd.write(w + '\n')
fd.close()
Todo lo que hace es imprimir espacios en blanco en la consola o el CSV. Así que lo probé con PhantomJS ya que alguien me dijo que podría estar cargando con JS. ¡Sin embargo, el mismo resultado! Imprime espacios en blanco en la consola o CSV. Código de muestra a continuación.
var page = require('webpage').create(),
url = 'http://hcavirginia.com/home/';
page.open(url, function(status) {
if (status !== "success") {
console.log("Can't access network");
} else {
var result = page.evaluate(function() {
var list = document.querySelectorAll('span.ehc-er-digits'), time = [], i;
for (i = 0; i < list.length; i++) {
time.push(list[i].innerText);
}
return time;
});
console.log (result.join('\n'));
var fs = require('fs');
try
{
fs.write("HCA_Virginia.csv", '\n' + result.join('\n'), 'a');
}
catch(e)
{
console.log(e);
}
}
phantom.exit();
});
Los mismos problemas con Centura Health :(
¿Qué estoy haciendo mal?