如何使用Python获取网页的页面源?

时间:2011-11-05 06:32:58

标签: python

我希望获取网页的来源并自行解析各个标签。我怎么能用Python做到这一点?

4 个答案:

答案 0 :(得分:3)

import urllib2
urllib2.urlopen('http://stackoverflow.com').read()

这是一个简单的答案,但你应该看看BeautifulSoup

http://www.crummy.com/software/BeautifulSoup/

答案 1 :(得分:2)

有些选择是:

除httplib2和Beautiful Soup之外的所有内容都在Python Standard Library中。上面每个软件包的页面都包含简单的示例,可以让您了解最适合您需求的内容。

答案 2 :(得分:1)

我建议您使用BeautifulSoup

#for HTML parsing
from BeautifulSoup import BeautifulSoup
import urllib2

doc = urllib2.urlopen('http://google.com').read()

soup = BeautifulSoup(''.join(doc))

soup.contents[0].name

在此之后,您几乎可以解析本文档中的任何内容。请参阅documentation,其中包含有关如何执行此操作的详细示例。

答案 3 :(得分:1)

这里的所有答案都是正确的,而且BeautifulSoup很棒,但是当源代码HTML是由javascript动态创建的时候,现在通常就是这种情况,你需要使用一些首先创建最终HTML的引擎然后获取它,否则你将丢失大部分内容。

据我所知,最简单的方法就是使用浏览器的引擎。根据我的经验,Python + Selenium + Firefox是阻力最小的路径