• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

snejus / beetcamp
91%
main: 88%

Build:
Build:
LAST BUILD BRANCH: copilot/fix-3e8a0221-db36-4da0-a2c1-b65f91e708cd
DEFAULT BRANCH: main
Repo Added 01 Aug 2021 12:53AM UTC
Files 10
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

LAST BUILD ON BRANCH 0.19.2
branch: 0.19.2
CHANGE BRANCH
x
Reset
  • 0.19.2
  • 0.13.1
  • 0.13.2
  • 0.14.0
  • 0.15.0
  • 0.15.1
  • 0.16.0
  • 0.16.1
  • 0.16.3
  • 0.17.0
  • 0.17.1
  • 0.17.2
  • 0.18.0
  • 0.19.0
  • 0.19.1
  • 0.19.3
  • 0.20.0
  • 0.21.0
  • 0.22.0
  • 0.23.0
  • artist-title-fixes-comments-truncation
  • beets-2-support
  • copilot/fix-3e8a0221-db36-4da0-a2c1-b65f91e708cd
  • copilot/fix-47
  • copilot/fix-79
  • dependabot/pip/certifi-2022.12.7
  • dependabot/pip/certifi-2023.7.22
  • dependabot/pip/certifi-2024.7.4
  • dependabot/pip/markdown-it-py-2.2.0
  • dependabot/pip/requests-2.31.0
  • dependabot/pip/requests-2.32.0
  • dependabot/pip/urllib3-2.2.2
  • dependabot/pip/zipp-3.19.1
  • dev
  • fix-album-id-search
  • fix-art-fetching
  • fix-issue-26
  • fix-parsing-url-from-comments
  • handle-albums-without-ascii-alphanums
  • main
  • master
  • relax-beets-requirement
  • soundcloud
  • update-workflow-with-poetry

04 Aug 2024 06:37PM UTC coverage: 91.123%. First build
10238495737

push

github

snejus
fix: use httpx instead of requests to avoid Bandcamp blocking

When using requests/urllib3, Bandcamp response to all requests with
403 errors.

Investigating why, I tried:
- using curl to send the same request: it worked
- writing a tiny Python script to `GET bandcamp.com/` with requests: it
  failed with 403
- waiting a week to see if it solved itself: no luck
- changing the above mentioned script to use http.client or httpx worked

I think that in this case, Bandcamp's Web Application Firewall (WAF)
blocks the requests based not on their contents but on an artifact of
how urllib3 builds/sends the data, since curl with exact same headers
works.

Instead of trying to identify the exact reason, which is quite hard
without any info on Bandcamp's WAF, and fix/workaround that, I rewrote
the very little required HTTP code to use httpx and sidestep the issue.

532 of 587 branches covered (90.63%)

Branch coverage included in aggregate %.

13 of 18 new or added lines in 3 files covered. (72.22%)

1018 of 1114 relevant lines covered (91.38%)

13.59 hits per line

Relevant lines Covered
Build:
Build:
1114 RELEVANT LINES 1018 COVERED LINES
13.59 HITS PER LINE
Source Files on 0.19.2
  • Tree
  • List 10
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
10238495737 0.19.2 fix: use httpx instead of requests to avoid Bandcamp blocking When using requests/urllib3, Bandcamp response to all requests with 403 errors. Investigating why, I tried: - using curl to send the same request: it worked - writing a tiny Python sc... push 04 Aug 2024 06:45PM UTC snejus github
91.12
See All Builds (411)
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc