2013-03-05 121 views
0

我们开发了一个基于web的应用程序,用户登录等,我们开发了一个python应用程序,必须在此页面上获取一些数据。python打开网页并获取源代码

有什么方法可以与python和系统默认浏览器进行通信吗? 我们的主要目标是打开一个带有系统浏览器的网页,并从中获取HTML源代码?我们尝试使用python webbrowser,成功打开网页,但无法获取源代码,并尝试使用urllib2,在这种情况下,我认为我们必须使用系统默认浏览器的cookie等,我不想这样做,因为安全。

+2

正确的方法通常使用urllib2,它* *支持cookies ... – 2013-03-05 14:45:15

回答

1

https://pypi.python.org/pypi/selenium

您可以尝试使用Selenium,他做了测试,但没有什么能阻止你使用它作其他用途

+0

谢谢,这就是我需要的东西。 – user2136174 2013-03-05 15:16:03

+0

有没有办法让硒连接已经打开浏览器? 当我使用webdriver.Chrome()或webdriver.Firefox()打开新的。 – user2136174 2013-03-05 16:57:47

0

如果你的网站是没有JavaScript通航,那么你可以尝试Mechanize或。这些工具提供比urllib2更高级别的API,可让您执行诸如网页上的链接和填写HTML表单等内容。

例如,这可能有助于导航使用基于cookie的身份验证与HTML表单进行登录的网站。

+0

我们使用了很多javascript,大部分是jquery。 – user2136174 2013-03-05 15:17:13

0

看看nltk模块---它们有一些用于查看网页和获取文本的工具。还有BeautifulSoup,这是更详细一点。我目前正在使用这两种方式来抓取学习算法的网页---它们是相当广泛使用的模块,所以这意味着你可以在这里找到很多提示:)