Harvest JS使用SeleniumJS生成了Image URI

时间:2015-05-17 07:53:11

标签: javascript python selenium base64 png

我一直在尝试编写一个python脚本,允许我从whatsapp web获取QR码。我使用硒但似乎无法写它。

QR图像是由javascript live(因此为selenium)生成的PNG,其中它在Base64中转换为PNG并由浏览器转换为图像。

到目前为止,我所做的代码是这样的:

import base64
from selenium import webdriver

url = "https://web.whatsapp.com"
init_search = "<img style=\"display: block;\" src=\"data:image/png;base64,"
term_search = "\"></div>"

browser = webdriver.Firefox()
browser.get(url)
html_source = browser.page_source

start = html_source.find(init_search)
end = html_source[start:].find(term_search)

raw_png = html_source[start+len(init_search):end]

print html_source[start:end]
print base64.b64decode(raw_png)

browser.close()

但它并不稳定。如何做到这一点,如果可能的话,不用实际打开浏览器?

1 个答案:

答案 0 :(得分:0)

好吧,为了不打开浏览器,您可以尝试像Phantom.js这样的无头网络浏览器,它可以在您的终端中运行。

http://phantomjs.org/