2016-04-26 76 views
0

我正在学习一种叫做'web scraping'的练习,使用python。从我目前可以知道的想法是发出一个请求,从服务器加载站点数据,将DOM html存储在一个变量中,然后基本上数据从结果字符串中挖掘s ***,直到您能够快速访问完全且只有您需要的信息。有谁知道你好世界的网站?

那么我准备开始摆弄可能会帮助我做实际数据挖掘的语句,但首先我需要查看和理解字符串中的所有html。在我掌握了它之后,我不会在意HTML的外观,但现在我需要能够引用它来正确分析我的输出。到目前为止,我已经尝试谷歌,python.net,YouTube,各种博客等,但他们都看起来像别名。

我只是在寻找你认识的典型东西?

<html><head><meta><script src=""><style src=""><title></title></head><body><div class=""><img src=""></div><div><h1>my page</h1><li></li><li></li><li></li><li></li><li></li><li></li><p>click <a href="">here</a></p></div></body></html> 

你明白我的意思了吗?只是一个网站...使用像... html ...来渲染一些简单的结构化数据。

P.S.这是一种整洁。我去给这个帖子一些标签,我发现了'simple-html-dom'。所以我Google搜索了它。显然,它是某种语言,它可以让你从网上资源中解析html,正是我想要的。我可能会稍后再检查,但我仍想弄清楚如何用python来做到这一点。

编辑实际上像this这样的工作可以很好,但它是如此之大。我更喜欢小一点的东西。

+6

为什么你不只是运行你自己的网络服务器?然后,您可以根据需要创建页面。你也应该看美丽的汤(http://www.pythonforbeginners.com/beautifulsoup/) – rj93

+1

+1美丽的汤。但请注意,目前大多数网站都使用JavaScript视图呈现功能,因此您不能只使用HTTP请求的结果。有趣的是深入挖掘,以便找到AJAX调用返回数据(很好地格式化json或xml)。 – richerlariviere

+0

@richerlariviere我并不完全理解你刚才所说的话,但我很高兴你这样说,因为它感觉就像我在一点点潜入后会变得有意义的事情之一。 – Musixauce3000

回答

3

虽然建立自己的网页可能很好用,但您也可以尝试寻找“为l optimized进行优化”的页面。 Lynx是一个纯文本浏览器,与“简单”页面自然效果最佳。

你会发现大多数链接已经死了,但我发现这个列表,例如,仍然有很多活着和同样简单的页面:http://www.put.com/dead.html(请忽略内容本身......没有特别的原因我选择了这个例子以外,它可能很适合你的目的!)