如何阅读已在浏览器中打开的源网站

2024-09-29 23:23:27 发布

您现在位置:Python中文网/ 问答频道 /正文

我想知道是否有任何方法可以在浏览器中打开url并读取源代码打开的url? 我试图检查我的XPath选择器是否获得正确的captcha img src值。我不能这样做,使2个连接到网址,因为验证码将重新加载每次我连接到网址。在

我使用的阅读源:

url = "https://prod.ceidg.gov.pl/CEIDG/CEIDG.Public.UI/Search.aspx"
sock = urllib.urlopen(url)
htmlSource = sock.read()                            
sock.close()

要在浏览器中打开url,请执行以下操作:

^{pr2}$

你们知道怎么解决吗?在

谢谢


Tags: 方法httpssrcurlimg源代码浏览器选择器
3条回答

你可能需要多次请求才能获得验证码。给自己买一本小提琴手2(免费)http://fiddler2.com/get-fiddler。它将允许您查看服务器和浏览器之间的“对话”。一旦你看到了,你可能就会知道你需要什么。在

大多数跨平台python GUI工具包,如wx.Python、pyside等,都有一个html显示窗口,您可以使用它来显示python中的html源代码。我建议使用其中一种方法来显示python代码中的内容。在

我找到了解决办法。要在浏览器中查看url并同时查看此页面的源代码,请使用以下代码:

from selenium import webdriver
from lxml import etree, html

url = "https://prod.ceidg.gov.pl/CEIDG/CEIDG.Public.UI/Search.aspx"
adres_prefix = "https://prod.ceidg.gov.pl/CEIDG/CEIDG.Public.UI/"
adres_sufix = etree.XPath('string(//img[@class="captcha"]/@src)')

browser = webdriver.Firefox()
browser.get(url)
html_source = browser.page_source # i'm getting source code of open url

root = etree.HTML(html_source)
result = etree.tostring(root, pretty_print=True, method="html")
result2 = adres_sufix(root)
www = adres_prefix + result2
print www # now i see if XPath gives me right value

希望它能帮助别人 无论如何谢谢你的帮助

相关问题 更多 >

    热门问题