evenwicht

u/evenwicht@lemmy.sdf.org
258 posts · 336 comments

Recent posts

Recent comments

Are you calling Firefox a scraper then?

I’m sure there’s a way to wire it up that way.

Yes, you simply turn off images. Then Firefox is a scraper from the server standpoint. I use FF that way when operating under a bandwidth quota. Scraping a page is far less of a burden on the server than fetching the whole page (images, js, and all) for GUI rendering.

It’s bound to have a Turing complete language in it somewhere

Turing completeness is wholly irrelevant. A fetch operation does not absolutely need a turing complete language. But you will struggle to render the content for a graphical presentation without a turing complete language.

From a practical standpoint there’s a spectrum of activities that approximately go from Browsing to Scraping to DDoS in that order that really only differ in terms of scale.

Not “in that order”. Browsing graphically causes every image to be fetched. It’s much heavier than the HTML text that a scraper pulls. 10,000 gui users each fetching a page will strain your webserver faster than 10,000 html text pages being scraped.

Non-graphical users suffer from marginalization driven by the shitty attitude that “bots are bad and humans should alter their behavior and fetch images to look less like a bot as we don’t give a shit about oppressing bots.”

It sounds like what you’re describing is just timeshifted browsing. I doubt anyone notices unless you’re really describing what you’re trying to do incorrectly.

Timeshifted browsing is purpose of HTtrack. An AI operation doesn’t use HTtrack which is designed to organize the browsing session into interactive projects which launch a local GUI browser for offline viewing. An AI op has zero interest in that. A scraping operation uses curl, wget, beautiful soup/python, etc.

until WHOOM! an AI company scrapes their whole site and their hosting cost jumps that month, then the next month and the next as well because companies that would destroy copies of rare books to feed to their training don’t care.

It’s this kind of commentary that distorts public perception.

Scraper bots themselves serve many users, often more than the original site could afford to host. A scraper bot that grabs just raw text builds a database and makes the information more useful to more people than the original site. E.g. instead of each traveler manually visiting the website of every single airline (a costly image-rich bloat high in CO₂ emissions), they can go to a site that has scraped Ryanair and others. The aggregated text info is more useful. Consumers then only have to visit /one/ airline website after seeing all the info side-by-side. This is much less strain on resources.

You’ll often hear/read “follow” used by itself to imply “follow the rules,” in this case “follow the rules specified by robots.txt.”

That’s what I was saying. Hence why the claim that HTtrack follows locations listed in robots.txt is nonsense.

From a technical standpoint an LLM recommends trying this code snippet to make httrack ignore the robots.txt file:

I appreciate the tip. Indeed -s0 is what I worked out that I needed. You seem bent against AI so it’s a bit unexpected that you would be using it. I avoid AI because I generally boycott the corporations pushing the LLMs. But I’m not generally opposed to LLM tech. I have a local language translator and probably need to look into other LLMs that can run locally.

I enter the library with a laptop, and list of tasks and URLs. Tasks, meaning I have to e.g. search for a PDF manual for a 2nd-hand appliance I either bought for pulled from a dumpster. Or research something. For URLs that I just need to save for later reading, I open them in FF (many tabs) and use the SingleFile extension to save them one by one. Of course that robs me of human time that I need for tasks that must be interactive. My time would be more wisely managed to have HTtrack fetching what I need in the background while I do interactive things. I sometimes stay until I get kicked out because the library is closing, in which case my needs were not all satisfied.

For Lemmy, I save posts in advance as text files and copy-paste the text into a Lemmy web client. This is also not a good use of my time but the only offline lemmy client is broken. But if there were a non-broken lemmy client for offline access, it would probably face the same discrimination by this reckless and obnoxious anti-bot movement.

The server could institute some sort of login, but that defeats the purpose of an open internet.

Bingo.

Not on to advocate for internet open just for people privileged to have access in their homes.

There’s no technological difference between these

Are you calling Firefox a scraper then?

Consider there is:

  • privileged user with Internet in the comfort of their home using Firefox to browse the web
  • unprivileged user who has no Internet, who must go to the public library during limited hours of operation to quickly fetch the pages they need on their lunch break and return to work or home to view the pages offline, and likely discover pages they need to download on their next trip to the library.

Why would you call “2” a scraper and “1” otherwise?

It not only has options to ignore robots.txt, but it also has a setting that apparently uses robots.txt to know where to scrape!

Nonsense. The author was sloppy in their phrasing. That is not what he means by “follow robots.txt”. By “follow”, he means “obey”, not visit. I was also initially fooled by the same ambiguous wording when I first saw it.

Indeed I know it is voluntary. I’m calling out a shit decision by the developer who produced a tool that is unlikely to be used as a data harvesting AI op. The author knew his tool in practice would generally be no more robotic than Firefox itself. It’s not scraping. It’s fetching. The tool simply separates the fetching and viewing activities.

It has fuck-all to do with GUI vs CLI;

Of course it does. GUI users aren’t getting Firefox versions that yield to robots.txt files, but CLI (httrack) users are.

Don’t like it? Fork it and make an impolite version.

Of course, but that’s not the point.

(edit) there is a confusing -s0 option to ignore robots.txt.

You must just not have encountered a PDF that renders the page in a very strange way.

A scanned document is trivially rendered. So you must be referring to pure vector PDFs. With pure vector PDFs, the PDF generator is responsible for the contents. Indeed the PDF standard is about as shitty as the HTML standard and the quality of results are a product of the quality of the input. But in the case at hand, we are not really talking about managing poor quality input.

how pdftotext handles multi-column docs

The exact situation mentioned by the developer as an example in that report of a two-column PDF merging both columns into one line is very common. I don’t have such a PDF at hand but in my experience this is particularly common for scanned documents that have OCR’d text content. I’m positive that pdftotext would trip up on those too, because what else could it do than show the text as it is logically laid out in the file?

The pdftotext tool has a feature to handle 2 column docs. I often have docs with the left column in one language and the right column in another. Using pdftotext, we can specify a crop box that only extracts text landing in the left or right half of the page. In the absence of that feature, the left half of a line would be language 1 and the right half would be language 2 (merged). I don’t imagine that any user would expect ^ to match the beginning of the right-hand column. But given the docs as they are, users would expect the ^ to match the beginning of the line of the left-hand column.

the rule of least astonishment

If the functionality was different, people would just be complaining about a different incongruency.

Maybe but there is a principle to manage this: “the rule of least astonishment”. That is, software should be implemented to minimise astonishment. There could still be complaints if a problem is complex and difficult, but when the rule of least astonishment is followed it yields the least amount of complaints, which is not necessarily zero complaints. The case at hand seems to neglect the rule of least astonishment.

If I say match a b, without the concept of a line you would be unable to even work out whether a comes immediately before a space which is immediately before b with nothing else in between. Lines are indispensible for determining sequence. Whether a pattern is a b or ^b, the tool necessarily must determine what, if anything, is to the left of b. The dev took a shortcut and skipped the effort of analysing vertical significance between tokens. The pdftotext tool proves that text lines can be determined from a searchable PDF.

In any case, docs that lie or omit something important are always a bug. Man page says: “pdfgrep tries to be mostly compatible with GNU grep with some PDF-specific distinctions and additional options. Most notably, -n prints page instead of line numbers.” No mention of changing the meaning of ^ and $.

But, for your mental and social health, you should really maybe take a step back, clear your mind, and read some of the things that are here.

That advice is good for the pragmatist who does not give a shit about ethics.

The horse your riding on is so high, I’m not even sure you can see the grass, let alone touch it.

This is not how you convince ethical consumers to switch to the pragmatic self-fulfilling path. Ethical consumers do not patronize enshitifiers. Not taking the higher moral ground is one decision but then it’s a bit extra perverse to frame ethical consumption as something that is done “on a high horse”.

The intentional use of inflammatory language, the not actually answering a question,

The question was irrelevant threadcrap. You need to lower your expectations when you bring uncivil commentary.

and the fact that you’re about a hop skip and jump from actually saying “DO YOUR OWN RESEARCH!”

It’s more like: GET YOUR OWN THREAD.

You are only a stone’s throw from a Truther or other fun conspiracy nut.

This is exactly how a layperson (aka “normie”) perceives infosec practicioners. If someone groking infosec comes off as “paranoid”, it’s more an indication of the audience. We opt for security by default and require justified cause to make a compromise. The normie mindset is the reverse of that: prioritize convenience by default while requiring a justified reason to take a security-driven decision or to implement a street-wise security practice.

Worth noting as well that I have seen the “good news” outlets, and I have to say it’s a bit depressing to see how insignificant the news is and what a struggle it is for them to find newsworthy content. It’s never going to be something like “Trump slips on a fallen cheeseburger and falls out of a helicoptor” or “intel engineer forgets to include management engine in a recent production of CPUs”. It’s more like “duck tangled in fish net gets rescued”.

The official reason for the intel ME (the intel version of AMD’s PSP which hit in 2008) is so corporations could do some remote management ops on their corporate laptops, and so malware is hindered if it tries to insert itself into the bootstrap and so employees cannot install their own OS or whatever. Of course there is nothing controversial about those scenarios. Something like 99% of intel’s clientel is corporate. The individual human beings who buy personal computers for their own non-business activity are in the 1% that mean nothing to intel. So of course their needs can be neglected as far as Intel is concerned. Only the corporate consumer matters to the bottom line.

Corporations don’t give a shit about closed-source software. To them, accountability is paramount. Closed-source increases accounatibility on the supplier. If the closed-source software does something nasty to them, managers can point fingers. Corporate lawyers can sue. But if some shitty proprietary closed-source software is used against the interest of some individual, no one gives a shit. We can be marginalised. Hence why some of us like our FOSS. Transparency and control is more important than accountability to individual human beings without lawyers on retainer. I don’t want some closed-source garbage at the hand of some remote corporation deciding what bootstrap is “authorized” on my own property. OTOH if you run MS Windows, none of this matters to you.

We have lost sight over who serves who in the customer-supplier relationship. And now we have a fuck-ton of consumers who are okay with buying something they do not control, like a remotely controllable hidden core. I would have to be extremely desperate to buy a black box laptop. For now, my pre-2008 intel (non-spychip) performs well enough for my needs. When that changes, I believe a 2013 spychip-free AMD will suit my needs for another 10 or 20 years. Only then will I face having to cross the bridge where I lick the boots of an anti-consumer supplier. And perhaps by then we will have a viable open hardware for-the-people option.

Worth noting that the IBM power9 chip (or something like that) is both reasonably modern and also spychip free. But last time I checked you cannot get it in a laptop. It’s a costly processor for servers only. But in 10 or 20 years, maybe 2nd-hand IBM power9 or whatever will be cheap enough. I don’t foresee having to feed the marketplace of anti-consumer garbage anytime soon -- at least not w.r.t. laptops. But if I am buying a washing machine, then indeed I am fucked. It’s getting harder to find a washing machine that is not anti-consumer even 2nd-hand.

“Spy chip” is not a claim. It’s nomenclature. I am referring to the PSP. You don’t have to call it a “spy chip” if you don’t want. You can call it “friendly alternate control mechanism”, or “helpful nanny”, if you want. Call it “trustworthy proprietary closed-source security oversight guardian angel”, if you want. Or how about “WINchip” for Well-Intenioned Nanny? Whatever you choose to call it, you don’t need a “credible source” for whatever word or phrase you choose to use. “Spychip” has the prevailing nomenclature of those who prefer to be in control of their own property, which encapsulates a rejection of PSP, IME, Trustzone, and the like. And even more broadly, sometimes refers to clipper chips, or RFID, depending on context.

From there, what is a credible source for a word or phrase, when the language is English? It’s not like Academy Français, which officially recrognizes words in the French language under the authority of the French government. English is more chaotic. If a lot of people are using a word or phrase, journalists will use it. If journalists are using a word frequently, maybe Oxford dictionary or Marriam Webster will add it to their dictionary, if the feel like it. If you are American, you may not consider Oxford dictionary credible. And if you are British, you may not consider Webster’s dictionary credible.

I doubt any dictionary has added the term spychip. Unlike the word “piracy” of the non-high-seas hijacking variety, where various dictionaries are happy to equate the peaceful sharing of information/deas with “piracy” (rape, theft, randsacking, pillaging, etc).

Generally AMD had a poor reputation so indeed AMD chips ended up in budget product lines. But the tables have turned retrospectively because no one realised from 2008 to 2013 that AMD unwittingly had a pro-consumer privacy advantage, however accidental.

Unfortunately nobody ever put AMDs APUs into actually good laptops,

The CPU is part of what makes a machine “good”. You could say Thinkpads were good for their repairability, upgradability, and stability of design across models -- exactly the factors that Apple is the poorest at. If good means /rugged/, then in fact there are some ASUS, Acer, and non-thinkpad Lenovos that had a stainless steel chassis (with pre-spychip AMDs).

Good is also relative. And now we know that having a spychip not so good. So they put a piece if shit spychip in an otherwise good machine, thus dragging down the goodness of those machines. Conneseurs of the time would not care to track the various models of perceived junk. But retrospectively it started making sense to do so -- once knowledge of the spy chips was well established. But this is a very niche community who gives a shit about spy chips. Masses of normies just care about specs and performance which is who we would rely on to document the hardware.

on SDF lost data? · c/isitdown · 1 pts · 19d

sdf is the host. The same that hosts my acct. It’s not a fed issue. But the fed could compensate for the problem because hosts other than SDF can see the whole timeline.

I usually want to archive a page that can be faithfully reproduced, sometimes for borderline forensic purposes. I usually don’t have time during a browsing session to inspect the results of a saved page for quality. If I pop into a public hotspot I want to save and go.

But later on when I’m reading and managing the offline content, I might decide the graphics on a page are unwanted. So perhaps it would be useful to do w3m -dump "$my_local_GUI_page.html" > lean_capture.txt && rm $my_local_GUI_page.html". I’ll have to try that.

(update) I works to run w3m -dump "$my_local_GUI_page.html" > lean_capture.txt but strangely the file:// scheme is not understood. E.g. this does not work: w3m -dump file://./"$my_local_GUI_page.html".

(update 2) If the webpage is MIME-formatted, w3m does not handle it and just dumps the base64 blobs.