Need advice about which tool to choose?Ask the StackShare community!

PhantomJS

665
378
+ 1
18
wkhtmltopdf

49
80
+ 1
0
Add tool

PhantomJS vs wkhtmltopdf: What are the differences?

Developers describe PhantomJS as "Scriptable Headless WebKit". PhantomJS (www.phantomjs.org) is a headless WebKit scriptable with JavaScript. It is used by hundreds of developers and dozens of organizations for web-related development workflow. On the other hand, wkhtmltopdf is detailed as "Convert HTML to PDF using Webkit (QtWebKit)". wkhtmltopdf and wkhtmltoimage are command line tools to render HTML into PDF and various image formats using the QT Webkit rendering engine. These run entirely "headless" and do not require a display or display service.

PhantomJS belongs to "Headless Browsers" category of the tech stack, while wkhtmltopdf can be primarily classified under "File Conversion".

PhantomJS and wkhtmltopdf are both open source tools. PhantomJS with 26.9K GitHub stars and 5.7K forks on GitHub appears to be more popular than wkhtmltopdf with 8.4K GitHub stars and 1.17K GitHub forks.

According to the StackShare community, PhantomJS has a broader approval, being mentioned in 77 company stacks & 47 developers stacks; compared to wkhtmltopdf, which is listed in 10 company stacks and 3 developer stacks.

Advice on PhantomJS and wkhtmltopdf
Ankur Loriya
Needs advice
on
Puppeteer
and
PhantomJS

I am using Node 12 for server scripting and have a function to generate PDF and send it to a browser. Currently, we are using PhantomJS to generate a PDF. Some web post shows that we can achieve PDF generation using Puppeteer. I was a bit confused. Should we move to puppeteerJS? Which one is better with NodeJS for generating PDF?

See more
Replies (2)
Recommends
Puppeteer

You better go with puppeteer. It is basically chrome automation tool, written in nodejs. So what you get is PDF, generated by chrome itself. I guess there is hardly better PDF generation tool for the web. Phantomjs is already more or less outdated as technology. It uses some old webkit port that's quite behind in terms of standards and features. It can be replaced with puppeteer for every single task.

See more
Recommends
Puppeteer

I suggest puppeteer to go for. It is simple and easy to set up. Only limitaiton is it can be used only for chrome browser and currently they are looking into expanding into FF. The next thing is Playwright which is just a scale up of Puppeteer. It supports cross browsers.

See more
Get Advice from developers at your company using Private StackShare. Sign up for Private StackShare.
Learn More
Pros of PhantomJS
Pros of wkhtmltopdf
  • 13
    Scriptable web browser
  • 3
    Depends on QT
  • 2
    No ECMAScript 6
    Be the first to leave a pro

    Sign up to add or upvote prosMake informed product decisions

    Sign up to add or upvote consMake informed product decisions

    What is PhantomJS?

    PhantomJS (www.phantomjs.org) is a headless WebKit scriptable with JavaScript. It is used by hundreds of developers and dozens of organizations for web-related development workflow.

    What is wkhtmltopdf?

    wkhtmltopdf and wkhtmltoimage are command line tools to render HTML into PDF and various image formats using the QT Webkit rendering engine. These run entirely "headless" and do not require a display or display service.

    Need advice about which tool to choose?Ask the StackShare community!

    What companies use PhantomJS?
    What companies use wkhtmltopdf?
    See which teams inside your own company are using PhantomJS or wkhtmltopdf.
    Sign up for Private StackShareLearn More

    Sign up to get full access to all the companiesMake informed product decisions

    What tools integrate with PhantomJS?
    What tools integrate with wkhtmltopdf?

    Sign up to get full access to all the tool integrationsMake informed product decisions

    Blog Posts

    What are some alternatives to PhantomJS and wkhtmltopdf?
    Selenium
    Selenium automates browsers. That's it! What you do with that power is entirely up to you. Primarily, it is for automating web applications for testing purposes, but is certainly not limited to just that. Boring web-based administration tasks can (and should!) also be automated as well.
    Electron
    With Electron, creating a desktop application for your company or idea is easy. Initially developed for GitHub's Atom editor, Electron has since been used to create applications by companies like Microsoft, Facebook, Slack, and Docker. The Electron framework lets you write cross-platform desktop applications using JavaScript, HTML and CSS. It is based on io.js and Chromium and is used in the Atom editor.
    Protractor
    Protractor is an end-to-end test framework for Angular and AngularJS applications. Protractor runs tests against your application running in a real browser, interacting with it as a user would.
    SlimerJS
    It allows you to manipulate a web page with an external Javascript script: opening a webpage, clicking on links, modifying the content... It is useful to do functional tests, page automation, network monitoring, screen capture etc.
    Puppeteer
    Puppeteer is a Node library which provides a high-level API to control headless Chrome over the DevTools Protocol. It can also be configured to use full (non-headless) Chrome.
    See all alternatives