PhantomBrowser is typed Python wrapper for phantomjscloud.com api with optimize magic rendering and support asynchronous.
pip install phantombrowser
render html:
from PhantomBrowser import Browser
browser = Browser()
response = browser.get("https://example.com")
print(response.text)
browser.close()
render plain text:
from PhantomBrowser import Browser
browser = Browser()
response = browser.get("https://example.com", render="plainText")
print(response.text)
browser.close()
render image:
from PhantomBrowser import Browser
browser = Browser()
response = browser.get("https://example.com", render="png")
browser.saveAs("example.png", response.content)
browser.close()
render PDF:
from PhantomBrowser import Browser
browser = Browser()
response = browser.get("https://example.com", render="pdf")
browser.saveAs("example.pdf", response.content)
browser.close()
the other method like browser.post()
, browser.put()
, browser.patch()
, browser.option()
and browser.delete()
also supported.
You can also use the API key by setting the environment variable PHANTOMJSCLOUD.COM_APIKEY
or directly in the class
from PhantomBrowser import Browser
browser = Browser("Your API Key")
from PhantomBrowser import AsyncBrowser
import asyncio
async def main():
browser = AsyncBrowser()
response = await browser.get("https://example.com")
print(await response.text())
await browser.close()
if __name__ == '__main__':
asyncio.run(main())
MIT