python 网络爬虫 翻译

你并不总需要锤子

当面对像难解的绳结事情的时候,马上用多条程词总结你的信息是吸引人的。但是,记住:断然舍弃在这部分的分层技术会导致代码难以调试,脆弱,或者两者有之,

开始之前,让我们来看看一些可以避免高级HTML解析的方法!

假设你有目内容。也许上一个名字,统计数值,或者是文本块。也许需要找的内容隐藏在一个没有帮助标签的HTML文本或是HTML属性,马上写一些像下面代码尝试提出:

bsObj.findAll("table")[4].findAll("tr")[2].find("td").findAll("div")[1].find("a")


这看起来并不好,除了线条的美学外,网站管理员对网站进行微小的改变都可能破坏你的网站爬虫,那么你的选择是什么呢?

查找"打印本页"的链接,或者一个手机的有良好格式HTML网站版本(更多在手机上呈现和接收手机网站版本)

查找隐藏在一个JAVASCRIPT 文件中的信息。记住,为了这样做,你也许需要检查导入的JAVASCRIPT 文件。例如,我通过查看嵌入在Google Map中的JavaScript ,以优美的数组格式来收集一个网站上的街道信息,该信息在每个地址上显示一个针尖。

对于页面标题,这是更普遍,但是信息在自身页面URL是可用的。

如果你正在查找的信息对于这个网站而言是特殊的,那你就不幸运了。如果不是,试着考虑你能获取该信息的来源。有其他网站有相同的数据吗?该网站显示的数据从其他网站爬取或是聚集的吗?

不要马上开始挖掘,特别是当面对隐藏或是格式化不好的数据的时候是非常重要的。深呼吸,然后想想可替代的。如果你确定没有可替代的方法存在,剩余的章节正好适合你。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值