html - 使用 golang 抓取网页内容
问题描述
我是编程语言的初学者,正在学习scrape。是否可以在这样的评论中获取数据?
<tbody id="the-list">
<tr>
<td valign="top" align="right">1.</td>
<td valign="top">BEKASI</td>
<td valign="top">Tambun</td>
<td valign="top">Selatan</td>
<td valign="top">01.4.13.16.06.000013</td>
<td valign="top">Jalan</td>
<td valign="top">PERUM BEKASI GRIYA ASRI</td>
<td valign="top">1.500 m<sup>2</sup></td>
<td valign="top" align="center">Kantor</td>
<td valign="top">400 m<sup>2</sup></td>
<td valign="top" align="center">1998</td>
<td valign="top" align="center">> 200</td>
<!--
<td valign="top" align="center">-6.2245</td>
<td valign="top" align="center">107.0827</td>
-->
<td valign="top" align="right">3</td>
<td valign="top" align="right">7</td>
<td valign="top" align="right">2</td>
<td valign="top" align="right">150</td>
<td valign="top">08888123</td>
<td valign="top">-</td>
</tr>
我希望结果可以是这样的
1.;BEKASI;Tambun;Selatan;01.4.13.16.06.000013;Jalan;PERUM BEKASI GRIYA ASRI;1.500 m;Kantor;400 m;1998;200;-6.2245;107.0827;3;7;2;150;08888123;-
解决方案
goquery是解析 html 内容的好库。
html := `
<table><tbody id="the-list">
<tr>
<td valign="top" align="right">1.</td>
<td valign="top">BEKASI</td>
<td valign="top">Tambun</td>
<td valign="top">Selatan</td>
<td valign="top">01.4.13.16.06.000013</td>
<td valign="top">Jalan</td>
<td valign="top">PERUM BEKASI GRIYA ASRI</td>
<td valign="top">1.500 m<sup>2</sup></td>
<td valign="top" align="center">Kantor</td>
<td valign="top">400 m<sup>2</sup></td>
<td valign="top" align="center">1998</td>
<td valign="top" align="center">> 200</td>
<!--
<td valign="top" align="center">-6.2245</td>
<td valign="top" align="center">107.0827</td>
-->
<td valign="top" align="right">3</td>
<td valign="top" align="right">7</td>
<td valign="top" align="right">2</td>
<td valign="top" align="right">150</td>
<td valign="top">08888123</td>
<td valign="top">-</td>
</tr>
</tbody></table>
`
doc, _ := goquery.NewDocumentFromReader(strings.NewReader(html))
sel := doc.Find("#the-list td")
for i := range sel.Nodes{
n := sel.Eq(i)
fmt.Println(n.Text())
}
推荐阅读
- sql - 将字符串转换为时间的 SQL 函数
- python - Odoo 10 - 检索另一个模型的字段值
- amazon-web-services - AWS IoT 证书文件
- c - 程序进入无限循环而不是调用函数?
- express - 如何在 pug 中将字符串呈现为 javascript
- kubernetes - MongoDB 副本的 Operator 或 Helm 图表
- amazon-web-services - AWS 自动缩放生命周期终止:等待无法正常工作
- ios - 每次滚动时都会重新加载 tableView 数据
- amazon-web-services - 为什么 AWS S3 JavaScript 示例代码将对象保存到无名子文件夹中?
- javascript - 使用节点调用外部动态库