jarun / ddgr

:duck: DuckDuckGo from the terminal
GNU General Public License v3.0
2.94k stars 139 forks source link

`[ERROR] HTTP Error 202: Accepted` when searching, no results #158

Closed in-plaintext closed 10 months ago

in-plaintext commented 10 months ago

Appears to return no results at the time of writing. Searching for anything prints:

$ ddgr github
[ERROR] HTTP Error 202: Accepted
No results.

package information (a fresh install on Fedora 39):

Name         : ddgr
Version      : 2.1
Release      : 4.fc39
Architecture : noarch
Size         : 130 k
Source       : ddgr-2.1-4.fc39.src.rpm
Repository   : @System
From repo    : fedora
faethon commented 10 months ago

Same here, no results and the same error message. Also version 2.1, ubuntu system, latest git pull.

jarun commented 10 months ago

Something has changed in the DuckDuckGo server side. I can see that DDG html version still works. Not sure if anything can be done from the client side. If this persists, I will archive the program.

rwinner commented 10 months ago

Yea, same. Bummer. I really depended on this lil utility.

faethon commented 10 months ago

Something has changed in the DuckDuckGo server side. I can see that DDG html version still works. Not sure if anything can be done from the client side. If this persists, I will archive the program.

Thanks and a pity that DDG has changed something at their end. I hope you can find a fix, since it is quite a useful utility that I use a lot on low powered headless machines such as raspberry pi's.

jrbray1 commented 10 months ago

ddgr worked for me for about 20 requests, then started returning consistent 202 error, then working occasionally with a 10s sleep. I expect its putting a block on my IP address. We shall see how long it lasts, and if rate throttling makes it happy.

60s sleeps working for 20 queries so far

rwinner commented 10 months ago

Fwiw, it worked once, returning a list of results in between repeatedly getting the 202 error.

Lee 😎

On Sun, Dec 10, 2023, 3:23 AM jrbray1 @.***> wrote:

ddgr worked for me for about 20 requests, then started returning a 202 error. I expect its putting a block on my IP address. We shall see how long it lasts, and rate throtting makes it happy.

— Reply to this email directly, view it on GitHub https://github.com/jarun/ddgr/issues/158#issuecomment-1848936430, or unsubscribe https://github.com/notifications/unsubscribe-auth/AWVOZCYCEYWMYWJJSTO35GLYIWLTFAVCNFSM6AAAAABAM6E3KSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQNBYHEZTMNBTGA . You are receiving this because you commented.Message ID: @.***>

faethon commented 10 months ago

unfortunately it has not worked since a couple of days. I get the same 202 error all the time.

ghost commented 10 months ago

Same here

mikecappella commented 10 months ago

Use the --noau option.

jarun commented 10 months ago

Thanks @mikecappella! Fixed with latest Brave browser's UA.

moonlightz commented 10 months ago

I was about to open an issue about the error 202 but I see that already someone did that. I am also affected about this problem. In my case, it's not a clean install of Raspbian aarch64, plenty months of use and upgrades. I started to get this problem since 1-2 weeks ago, I don't recall since when unless I see my mirc logs. Yes, I have an irc bot calling ddgr and display results to irc channels but I limited the output results upto 4 lines and it has also bold in the titles about the words I'm searching for. Few days ago, I remember I rebooted my RPi and the ddgr started working once more but I didn't use it that much... maybe 3 or 4 times... I thought to myself it fixed itself.. but 2 nights, I went to use it again and error 202 came back. I rebooted the RPi again but the error still there. I thought to myself it was some dns issue again but no. Every service is starting to get picky on clients apparently. I don't think it's a limit issue. It stopped working, then I rebooted, worked, stopped working again. They must be trying something on their side and they are breaking it while doing it.

moonlightz commented 10 months ago

Problem seems solved here. I ran apt-get update which informed me that debian 12.2 bumped to 12.4. Then ran apt-get full-upgrade but no ddgr listed. So I guessed that I would need to install ddgr manually using git clone. I removed ddgr first then I used git clone ........ and ran sudo python3 setup.py install and it installed fine to /usr/local/bin. I got this at top of the output:

running install
/usr/lib/python3/dist-packages/setuptools/command/install.py:34: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools.
  warnings.warn(
/usr/lib/python3/dist-packages/setuptools/command/easy_install.py:146: EasyInstallDeprecationWarning: easy_install command is deprecated. Use build and pip and other standards-based tools.
  warnings.warn(
running bdist_egg
pirate486743186 commented 10 months ago

@jarun push a minor release, or packagers will not pick up the fix. Packagers don't like packaging git repos. also, adding the ability of a custom UA will avoid this from become a problem again in the future.

And you should advertise in the README and with a pinned issue, that the project is in maintenance mode. If you don't tell people, don't be surprised that they don't know.

jarun commented 9 months ago

Fixed in ddgr 2.2.

chrisgrieser commented 9 months ago

Unfortunately, version 2.2 has not fixed the issue, but even made it break for me with and without --noua. In both cases getting this error:

[ERROR] <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1000)>
jarun commented 9 months ago

Looks like a local certificate related issue. Version 2.2 works fine at my end.

chrisgrieser commented 9 months ago

I just went back to 15f91df and there both, with and without --noua, work for me

jarun commented 9 months ago

After that commit, there is no other change in the 2.2 release for UA or --noua option.

chrisgrieser commented 9 months ago

okay, I figured out that the difference was that I am running the old version via python3 ddgr.

And going back to 2.2, it looks like python is making the difference here?

# fails
ddgr "water"

# works
python3 $(which ddgr) "water"

edit: on closer look, there seems to be an issue with homebrew's python version maybe? The macOS system python does work.

# works
/usr/bin/python3 $(which ddgr) "water"

# fails
/opt/homebrew/bin/python3.12 $(which ddgr) "water"

Weirdly, no other program I use has python issues