sabores - Eliminar etiquetas html en sed o similar
monster energy para que sirve (2)
Original:
Mac Terminal REGEX se comporta de forma un poco diferente. Pude hacer esto en mi Mac utilizando el siguiente ejemplo:
$ curl google.com | sed ''s/<[^>]*>//g''
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 219 100 219 0 0 385 0 --:--:-- --:--:-- --:--:-- 385
301 Moved
301 Moved
The document has moved
here.
$ bash --version
GNU bash, version 3.2.57(1)-release (x86_64-apple-darwin14)
Copyright (C) 2007 Free Software Foundation, Inc.
Editar:
Solo por aclaración, el original se veía así:
$ curl googl.com
<HTML><HEAD><meta http-equiv="content-type" content="text/html;charset=utf-8">
<TITLE>301 Moved</TITLE></HEAD><BODY>
<H1>301 Moved</H1>
The document has moved
<A HREF="http://www.google.com/">here</A>.
</BODY></HTML>
También el molesto encabezado curl se puede eliminar usando la opción -s:
$ curl -s google.com | sed ''s/<[^>]*>//g''
301 Moved
301 Moved
The document has moved
here.
$
Estoy tratando de obtener los contenidos de la tabla de una página web. Sin embargo, necesito los contenidos, pero no las etiquetas <tr></tr>
. Ni siquiera necesito "tr" o "td" solo el contenido. por ejemplo:
<td> I want only this </td>
<tr> and also this </tr>
<TABLE> only texts/numbers in between tags and not the tags. </TABLE>
también me gustaría poner el resultado de la primera columna así en un nuevo archivo csv column1, info1, info2, info3 coumn2, info1, info2, info3
Intenté eliminar los patrones <tr>
<td>
pero cuando busco la tabla también hay otras etiquetas como <color>
<span>
así que quiero borrar todas las etiquetas; en resumen, todo con <y>.
sed ''s/<[^>]/+>//g''
eliminará todas las etiquetas, pero es posible que desee reemplazarlas por un espacio para que las etiquetas que están una al lado de la otra no se ejecuten juntas: <td>one</td><td>two</td>
convirtiéndose en: onetwo
. Entonces podrías hacer sed ''s/<[^>]/+>/ /g''
para que salga one two
(bueno, en realidad one two
).
Dicho eso, a menos que solo necesite el texto en bruto, y parece que está tratando de realizar algunas transformaciones en los datos después de eliminar las etiquetas, un lenguaje de scripting como Perl podría ser una herramienta más apropiada para hacer estas cosas.
Como mu es demasiado corto, mencionar que raspar HTML puede ser un poco incierto, usar algo que en realidad analiza el HTML para usted sería la mejor manera de hacerlo. PHP DOM API es bastante bueno para este tipo de cosas.