.blend files or anything I wanted to really. This is how I started writing articles. And it grew into something people were seemingly interested in, and in shorter time than on YouTube, I got the same thousand subscribers, but this time as readers of things I had to say. And I had thoughts. Enough thoughts to apparently entertain a thousand or so people.
β© Reply
meta tags. Now the same article shows only a couple of hundred views, which is very good, actually, for a personal blog like this.
β© Reply
# First it is invalidating old types of graph requests from the old code. # Some scraper-bots still request those. if "?" in server.path: AccessDenied(server) return # Then it checks if the article itself was loaded before the graph # If the article wasn't loaded, and just the graph, what the hell? if time.time()-20 > RecentArticles.get(url, 0): AccessDenied(server) return # Then it is making sure the request has a cookie with it and if not, # prompting it to be refreshed once, just to make sure that the # browser wasn't too fast or something. if not server.cookie and server.headers.get("user-agent", "") not in ProblematicRefreshes: Redirect(server, server.path) ProblematicRefreshes.append(server.headers.get("user-agent", "")) return if server.headers.get("user-agent", "") in ProblematicRefreshes: ProblematicRefreshes.remove(server.headers.get("user-agent", "")) # And finally it checks if that cookie wasn't already recorded as # somebody who loaded that page. if cookie and cookie not in article.get("views", {}).get("viewers", []): # And only then it adds a view...
![[thumbnail]](https://upload.wikimedia.org/wikipedia/en/4/4e/Hundreds_of_Beavers.png)