Hacking the NY Times paywall
Need to cut to the chase? Get the NY Times paywall remover for Chrome.
For some months now we’ve been suffering under the yoke of the New York Times’s subscription paywall, which has driven parsimonious, petit-bourgeois netizens like me to the journalistic doldrums of the LA Times and Washington Post. At least there’s less David Brooks in the world now, we mutter to each other, but it’s little consolation, as we’re forced to admit that there really isn’t a great substitute for the Old Gray Lady when it comes to mainstream news.
Slightly less well-publicized is the surprising porousness of said paywall (more of a “pay fence” according to some), which, as I have just now personally verified, is as easy to circumvent as editing the URL of the article that you happen to be reading. What’s more is that behind the paywall, it appears that article content is still delivered in its entirety, and anyone with a modern browser and a bit of tech savvy can browse away with impunity even after the monthly article limit has been reached.
When the Times presents you with a paywall, you are encountering three things:
- The article itself, in its entirety.
- A surface layer of subscription advertisements that obscure the article content underneath.
- Some mechanism by which the scrollbars of the browser are disabled.
This means that if you can get rid of the subscription overlay and re-enable the scrollbars, you get to read the article as normal.
It turns out that the overlay is neatly packaged under a single, anonymous
div, which can be safely deleted from the page’s DOM without affecting any of the important content.
The scrollbars are hidden via the
overflow-y CSS properties:
In pretty much any modern browser, including (but not restricted to) Chrome, Safari, and Firefox with the Firebug extension, you can manually manipulate the presentation of web pages to suit your needs. To view a paywall-ed NYT article, it boils down to the following jQuery statements:
It turns out that the code that drives the paywall doesn’t execute until a second after the article finishes loading, so the above needs to be delayed by slightly over a second in order to ensure that things occur in the correct order.
For your convenience, I went ahead and packaged this into my first-ever Chrome extension.
The ease with which the Times’s paywall can be circumvented suggests, to me at least, one of two things: either the Times has a more radical and effective means of subscription enforcement waiting in the wings (i.e., something that doesn’t deliver the entire article to the reader’s browser, such as the paywall already in place for the NYT archives), or the Times simply doesn’t care that it’s easy to get around the paywall, since the vast majority of people don’t have the tech savvy or simply can’t be bothered. It’s perhaps the same realization that the music publishing industry has come to: sure, people can steal it, but they’re going to end up doing whatever’s the least hassle, and so let’s making paying for it the least hassle.
I’m probably not alone in this regard, but it’s somewhat interesting to observe that minor but non-trivial parts of my technical self-education involve grey-area hackery that abuses the spirit, if not the legal letter, of intellectual property regimes. For example, the first Perl script I ever wrote was used to download and collate the entire advanced Mandarin curriculum from ChinesePod during my free 7-day trial. Now, I’ve got certain philosophical objections to the idea of property, not least towards the intellectual and abstracted sort, and of course I do try to give away what I create on my own time, but anyway I sincerely doubt that the revolution is being helped along by what amounts to digital shoplifting, and still further, it’s also undeniable that my day job has, and perhaps will continue to be, materially grounded in said property regimes.
At any rate, rest assured I won’t try to justify this latest instance of technical misdemeanor through any kind of idealistic argument. I’ve always been deeply suspicious of the kind of quasi-crusading ethos that essentially posits hacking as a kind of public service, one that exposes weakly-secured systems to their administrators, who somehow ought to have known better. The reasoning here strikes me as similar to punching random people in the face to reveal to them to the reality that they are not prepared for getting punched in the face. In a similar vein, I’d have slightly more sympathy for the anti-establishment and anti-corporate sentiments of groups like lulzSec if there wasn’t such an obvious stench of profit motive behind their activity.
But how I’ve digressed! The point, all along, was that I’m a cheap asshole.