| Commit message (Expand) | Author | Age | Files | Lines |
| * | we no longer use DECODE_CONTENT_TYPES | jesopo | 2019-12-18 | 1 | -1/+0 |
| * | allow Request objects to specify their timeout | jesopo | 2019-12-11 | 1 | -1/+3 |
| * | add utils.http.Session object, to preserve cookies across requests | jesopo | 2019-12-03 | 1 | -0/+14 |
| * | utils.http.Response.decode() should default to detected encoding | jesopo | 2019-11-28 | 1 | -2/+2 |
| * | explicitly use "lxml" for finding page encoding | jesopo | 2019-11-26 | 1 | -1/+1 |
| * | _find_encoding takes `bytes` and soupifies now | jesopo | 2019-11-26 | 1 | -1/+2 |
| * | utils.http.request_many() shouldn't decode data for Response | jesopo | 2019-11-26 | 1 | -3/+2 |
| * | utils.http.Response.data should always be `bytes` - add .decode and .soup | jesopo | 2019-11-26 | 1 | -25/+7 |
| * | remove `parser` from utils.http.Request, add Request.soup() | jesopo | 2019-11-26 | 1 | -15/+6 |
| * | add `cookies` and `.json()` to utils.http.Response objects | jesopo | 2019-11-25 | 1 | -7/+13 |
| * | change utils.http.Request to be a dataclass | jesopo | 2019-11-25 | 1 | -38/+30 |
| * | give bitbot a unique User-Agent•••closes #206
| jesopo | 2019-11-20 | 1 | -6/+5 |
| * | Fix type errors detected by 'mypy --ignore-missing-imports src'. | Valentin Lorentz | 2019-10-30 | 1 | -2/+2 |
| * | support utf8 hostnames by punycode (idna) encoding | jesopo | 2019-10-18 | 1 | -4/+12 |
| * | parse out content_type in Response ctor | jesopo | 2019-10-05 | 1 | -5/+3 |
| * | parse content-type out in utils.http.request, put it on Response object | jesopo | 2019-10-04 | 1 | -9/+13 |
| * | 'is_localhost()' -> 'host_permitted()' | jesopo | 2019-09-30 | 1 | -4/+4 |
| * | use ipaddress is_loopback etc to do better forbidden ranges•••closes #87
| jesopo | 2019-09-30 | 1 | -0/+9 |
| * | assume http fallback_encoding by content-type (utf8 for json) | jesopo | 2019-09-25 | 1 | -1/+8 |
| * | only BeautifulSoup for finding encoding when it's a html-ish type | jesopo | 2019-09-20 | 1 | -1/+1 |
| * | log call was replaced with Exception but [] on args remained | jesopo | 2019-09-19 | 1 | -1/+1 |
| * | give Requests, use them in utils.http.request_many() | jesopo | 2019-09-19 | 1 | -12/+25 |
| * | utils.http.request_() has no self, let alone self.log | jesopo | 2019-09-19 | 1 | -3/+4 |
| * | should be using pair_start/pair_end throughout `for` | jesopo | 2019-09-19 | 1 | -2/+2 |
| * | also show "bad" data in HTTPParsingException when a message is provided | jesopo | 2019-09-18 | 1 | -1/+1 |
| * | show "bad" data in HTTPParsingException message | jesopo | 2019-09-18 | 1 | -2/+3 |
| * | don't check already-read data when checking for too-large requests•••this check was here because the first read will return empty if it was an
invalid byte sequence for e.g. gzip because we needed to receive more data. the
second read will always return data (not decoded) so regardless of what the
already-read data is, the second read is the only criteria we need.
| jesopo | 2019-09-17 | 1 | -1/+1 |
| * | log which URL caused an error in request_many | jesopo | 2019-09-17 | 1 | -1/+6 |
| * | only decode content-types in DECODE_CONTENT_TYPES | jesopo | 2019-09-17 | 1 | -1/+1 |
| * | Response.__init__() needs `encoding` now | jesopo | 2019-09-17 | 1 | -1/+1 |
| * | restore 5 second (instead of default 10) deadline for http.request | jesopo | 2019-09-17 | 1 | -1/+1 |
| * | use utils.deadline_process() in utils.http._request() so background threads can•••call _request()
| jesopo | 2019-09-17 | 1 | -30/+37 |
| * | add `json_body` arg to Request to json-encode body, only return from `body` if•••not null
| jesopo | 2019-09-16 | 1 | -4/+8 |
| * | allow Requests to specify a useragent | jesopo | 2019-09-12 | 1 | -3/+4 |
| * | add a helper utils.http.Client static object | jesopo | 2019-09-11 | 1 | -0/+4 |
| * | add `proxy` to Request objects | jesopo | 2019-09-11 | 1 | -1/+2 |
| * | refactor utils.http.requests to support a Request object | jesopo | 2019-09-11 | 1 | -27/+77 |
| * | automatically decode certain http content types | jesopo | 2019-09-11 | 1 | -1/+6 |
| * | Don't try to .decode non-html things, default iso-lat-1 for non-html too | jesopo | 2019-09-09 | 1 | -5/+5 |
| * | add flag to disable encoding detection | jesopo | 2019-09-09 | 1 | -5/+4 |
| * | 'str.split' -> 's.split' | jesopo | 2019-09-09 | 1 | -1/+1 |
| * | still default to iso-latin-1 if no on-page or in-header content-type is present | jesopo | 2019-09-09 | 1 | -1/+1 |
| * | only look for <meta>-related tags when there are meta tags | jesopo | 2019-09-09 | 1 | -9/+11 |
| * | add explicit None return for _find_encoding (mypy) | jesopo | 2019-09-09 | 1 | -0/+1 |
| * | change utils.http.request to best-effort detect on-page encoding•••closes #113
| jesopo | 2019-09-09 | 1 | -2/+34 |
| * | correctly qualify DeadlineExceededException namespace | jesopo | 2019-09-03 | 1 | -1/+1 |
| * | use utils.deadline() in utils.http.request, not raw sigalrm | jesopo | 2019-09-02 | 1 | -18/+15 |
| * | Pass the content of a webpage to HTTPParsingException | jesopo | 2019-09-02 | 1 | -2/+2 |
| * | use \S+ for url regex (for non-ascii chars), use url_sanitize to catch <> | jesopo | 2019-09-02 | 1 | -9/+12 |
| * | Allow bypass of content-type check in utils.http.request | jesopo | 2019-08-05 | 1 | -3/+3 |