ofscraper 3.13.dev4__tar.gz → 3.13.dev5__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/PKG-INFO +3 -4
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/classes/sessionmanager/download.py +4 -6
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/classes/sessionmanager/ofsession.py +1 -2
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/classes/sessionmanager/sessionmanager.py +47 -105
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/check.py +5 -5
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/manual.py +1 -1
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/scraper/actions/like/like.py +1 -1
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/const/values/config.py +1 -2
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/data/api/common/timeline.py +1 -1
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/data/api/highlights.py +1 -1
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/data/api/me.py +2 -2
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/data/api/messages.py +1 -1
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/data/api/profile.py +2 -2
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/prompts/prompt_groups/config.py +4 -23
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/auth/make.py +1 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/auth/request.py +7 -7
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/config/data.py +5 -26
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/config/schema.py +1 -3
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/logs/classes/handlers/discord.py +37 -19
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/logs/logs.py +2 -2
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/paths/common.py +1 -1
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/paths/manage.py +4 -2
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/settings.py +0 -1
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/system/network.py +1 -1
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/pyproject.toml +3 -4
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/LICENSE +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/README.md +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/__main__.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/__version__.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/__version__.pye +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/classes/labels.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/classes/of/base.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/classes/of/media.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/classes/of/posts.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/classes/placeholder.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/classes/table/app.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/classes/table/compose.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/classes/table/const.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/classes/table/css.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/classes/table/fields/boolfield.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/classes/table/fields/datefield.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/classes/table/fields/downloadfield.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/classes/table/fields/mediafield.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/classes/table/fields/numfield.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/classes/table/fields/pricefield.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/classes/table/fields/responsefield.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/classes/table/fields/selectfield.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/classes/table/fields/sizefield.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/classes/table/fields/textsearch.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/classes/table/fields/timefield.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/classes/table/inputs/filterinput.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/classes/table/inputs/intergerinput.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/classes/table/inputs/strinput.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/classes/table/sections/sidebar.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/classes/table/sections/table.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/classes/table/sections/table_console.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/classes/table/utils/lock.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/classes/table/utils/names.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/db.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/metadata/consumer.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/metadata/desc.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/metadata/manager.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/metadata/metadata.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/scraper/actions/download/download.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/scraper/actions/download/managers/alt_download.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/scraper/actions/download/managers/downloadmanager.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/scraper/actions/download/managers/main_download.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/scraper/actions/download/run.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/scraper/actions/download/utils/chunk.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/scraper/actions/download/utils/desc.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/scraper/actions/download/utils/keyhelpers.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/scraper/actions/download/utils/leaky.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/scraper/actions/download/utils/retries.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/scraper/actions/download/utils/text.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/scraper/actions/utils/buffer.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/scraper/actions/utils/general.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/scraper/actions/utils/globals.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/scraper/actions/utils/log.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/scraper/actions/utils/params.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/scraper/actions/utils/paths/media.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/scraper/actions/utils/paths/paths.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/scraper/actions/utils/progress/convert.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/scraper/actions/utils/progress/update.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/scraper/actions/utils/retries.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/scraper/actions/utils/send/chunk.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/scraper/actions/utils/send/message.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/scraper/actions/utils/threads.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/scraper/actions/utils/workers.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/scraper/scraper.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/scraper/utils/daemon.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/scraper/utils/jobqueue.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/scraper/utils/prepare.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/scraper/utils/print.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/scraper/utils/schedule.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/utils/command.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/utils/scrape_context.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/commands/utils/strings.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/const/constants.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/const/values/action/download.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/const/values/action/like.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/const/values/action/metadata.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/const/values/binary.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/const/values/date.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/const/values/download.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/const/values/dynamic.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/const/values/general.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/const/values/list.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/const/values/live.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/const/values/logger.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/const/values/path/bytes.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/const/values/path/files.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/const/values/path/general.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/const/values/path/path.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/const/values/prompts.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/const/values/req/anon.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/const/values/req/api.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/const/values/req/cdm.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/const/values/req/discord.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/const/values/req/git.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/const/values/req/like.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/const/values/req/mpd.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/const/values/req/req.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/const/values/rich.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/const/values/system.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/const/values/table.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/const/values/test/test_constants.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/const/values/time.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/const/values/url/other_url.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/const/values/url/url.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/data/api/archive.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/data/api/common/after.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/data/api/common/cache/read.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/data/api/common/cache/write.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/data/api/common/check.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/data/api/common/logs/logs.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/data/api/common/logs/strings.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/data/api/init.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/data/api/labels.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/data/api/paid.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/data/api/pinned.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/data/api/streams.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/data/api/subscriptions/common.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/data/api/subscriptions/individual.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/data/api/subscriptions/lists.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/data/api/subscriptions/subscriptions.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/data/api/timeline.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/data/models/manager.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/data/models/models.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/data/models/utils/retriver.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/data/posts/post.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/data/posts/scrape_paid.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/db/__init__.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/db/backup.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/db/difference.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/db/merge.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/db/operations.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/db/operations_/empty.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/db/operations_/labels.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/db/operations_/media.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/db/operations_/messages.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/db/operations_/others.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/db/operations_/posts.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/db/operations_/profile.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/db/operations_/stories.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/db/operations_/wrapper.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/db/transition.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/db/utils/convert.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/filters/media/filters.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/filters/media/main.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/filters/models/date.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/filters/models/flags.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/filters/models/other.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/filters/models/price.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/filters/models/sort.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/filters/models/subtype.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/filters/models/utils/logs.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/main/close/exit.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/main/close/final/final.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/main/close/final/final_log.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/main/close/final/final_script.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/main/close/final/final_user.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/main/manager.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/main/open/load.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/main/open/run.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/prompts/keybindings.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/prompts/promptConvert.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/prompts/prompt_groups/actions.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/prompts/prompt_groups/area.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/prompts/prompt_groups/auth.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/prompts/prompt_groups/binary.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/prompts/prompt_groups/menu.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/prompts/prompt_groups/merge.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/prompts/prompt_groups/model.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/prompts/prompt_groups/profile.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/prompts/prompt_strings.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/prompts/prompt_validators.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/prompts/prompts.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/prompts/utils/model_helpers.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/prompts/utils/prompt_helpers.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/__init__.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/actions.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/ads.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/accessors/actions.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/accessors/areas.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/accessors/output.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/accessors/quality.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/accessors/read.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/accessors/time.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/callbacks/choice.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/callbacks/file.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/callbacks/string.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/callbacks/username.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/globals.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/helpers/hide_args.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/main.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/mutators/before.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/mutators/change.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/mutators/user.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/mutators/write.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/arguments/advanced_processing.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/arguments/advanced_program.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/arguments/advanced_user_filter.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/arguments/automatic.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/arguments/check.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/arguments/db.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/arguments/download.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/arguments/file.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/arguments/logging.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/arguments/media_content.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/arguments/metadata_filters.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/arguments/post_content.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/arguments/program.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/arguments/shared.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/arguments/user_list.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/arguments/user_select.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/arguments/user_sort.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/arguments/utils/date.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/arguments/utils/retry.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/commands/db.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/commands/main.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/commands/manual.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/commands/message.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/commands/metadata.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/commands/paid.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/commands/post.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/commands/story.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/group_bundles/advanced_common.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/group_bundles/check.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/group_bundles/common.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/group_bundles/db.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/group_bundles/main.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/group_bundles/manual.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/group_bundles/message_check.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/group_bundles/metadata.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/group_bundles/paid_check.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/group_bundles/post_check.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/group_bundles/story_check.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/group_bundles/utils/check.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/groups/advanced_processing.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/groups/advanced_program.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/groups/advanced_user_filter.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/groups/automatic.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/groups/check_content.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/groups/download.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/groups/file.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/groups/logging.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/groups/media_filter.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/groups/post_filter.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/groups/program.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/groups/user_list.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/groups/user_select.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/parse/groups/user_sort.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/types/arrow.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/args/types/choice.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/auth/data.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/auth/file.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/auth/schema.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/auth/utils/context.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/auth/utils/dict.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/auth/utils/prompt.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/auth/utils/warning/check.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/auth/utils/warning/print.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/auth/utils/warning/warning.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/binaries.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/cache.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/checkers.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/config/config.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/config/custom.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/config/file.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/config/menu.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/config/utils/context.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/config/utils/wrapper.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/console.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/constants.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/context/exit.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/context/run_async.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/context/stdout.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/dates.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/encoding.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/hash.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/live/classes/progress.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/live/classes/task.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/live/classes/transfercol.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/live/clear.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/live/empty.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/live/groups.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/live/live.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/live/panel.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/live/progress.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/live/screens.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/live/tasks.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/live/updater.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/logs/classes/classes.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/logs/classes/handlers/file.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/logs/classes/handlers/pipe.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/logs/classes/handlers/rich.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/logs/classes/handlers/text.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/logs/classes/handlers/zmq.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/logs/close.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/logs/globals.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/logs/handle.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/logs/logger.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/logs/other.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/logs/stdout.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/logs/utils/level.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/logs/utils/trace.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/manager.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/me.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/menu.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/merge.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/paths/check.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/paths/db.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/paths/paths.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/profiles/data.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/profiles/manage.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/profiles/tools.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/sems.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/separate.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/string.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/system/free.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/system/priority.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/system/speed.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/system/subprocess.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/system/system.py +0 -0
- {ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/utils/text.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: ofscraper
|
|
3
|
-
Version: 3.13.
|
|
3
|
+
Version: 3.13.dev5
|
|
4
4
|
Summary: automatically scrape onlyfans
|
|
5
5
|
Author: datawhores
|
|
6
6
|
Author-email: datawhores@riseup.net
|
|
@@ -11,7 +11,6 @@ Classifier: Programming Language :: Python :: 3.12
|
|
|
11
11
|
Classifier: Programming Language :: Python :: 3.13
|
|
12
12
|
Provides-Extra: pyinstaller
|
|
13
13
|
Requires-Dist: aiofiles (>=23.2.1,<24.0.0)
|
|
14
|
-
Requires-Dist: aiohttp (==3.10.11)
|
|
15
14
|
Requires-Dist: aiolimiter (>=1.1.0,<2.0.0)
|
|
16
15
|
Requires-Dist: aioprocessing (>=2.0.1,<3.0.0)
|
|
17
16
|
Requires-Dist: aiosqlite (>=0.20.0,<0.21.0)
|
|
@@ -26,7 +25,8 @@ Requires-Dist: diskcache (>=5.6.3,<6.0.0)
|
|
|
26
25
|
Requires-Dist: dunamai (>=1.19.2,<2.0.0)
|
|
27
26
|
Requires-Dist: faust-cchardet (>=2.1.19,<3.0.0)
|
|
28
27
|
Requires-Dist: filelock (>=3.13.1,<4.0.0)
|
|
29
|
-
Requires-Dist: httpx
|
|
28
|
+
Requires-Dist: httpx-aiohttp (>=0.1.2,<0.2.0)
|
|
29
|
+
Requires-Dist: httpx-curl-cffi (>=0.1.3,<0.2.0)
|
|
30
30
|
Requires-Dist: humanfriendly (>=10.0,<11.0)
|
|
31
31
|
Requires-Dist: idna (==3.7)
|
|
32
32
|
Requires-Dist: inquirerpy (>=0.3.4,<0.4.0)
|
|
@@ -51,7 +51,6 @@ Requires-Dist: speedtest-cli (>=2.1.3,<3.0.0)
|
|
|
51
51
|
Requires-Dist: tenacity (>=8.2.3,<9.0.0)
|
|
52
52
|
Requires-Dist: textual (==1.0.0)
|
|
53
53
|
Requires-Dist: tqdm (>=4.66.4,<5.0.0)
|
|
54
|
-
Requires-Dist: ua-generator (>=2.0.5,<3.0.0)
|
|
55
54
|
Requires-Dist: uvloop (>=0.19.0,<0.20.0) ; sys_platform == "linux" or sys_platform == "linux2"
|
|
56
55
|
Requires-Dist: win32-setctime (>=1.1.0,<2.0.0)
|
|
57
56
|
Requires-Dist: xxhash (>=3.4.1,<4.0.0)
|
|
@@ -87,14 +87,12 @@ class download_session(sessionManager.sessionManager):
|
|
|
87
87
|
|
|
88
88
|
|
|
89
89
|
class cdm_session(sessionManager.sessionManager):
|
|
90
|
-
def __init__(self,
|
|
91
|
-
backend = backend or "httpx"
|
|
90
|
+
def __init__(self, sem_count=None) -> None:
|
|
92
91
|
sem_count = sem_count or common_globals.sem
|
|
93
|
-
super().__init__(sem_count=sem_count
|
|
92
|
+
super().__init__(sem_count=sem_count)
|
|
94
93
|
|
|
95
94
|
|
|
96
95
|
class cdm_session_manual(ofsessionmanager.OFSessionManager):
|
|
97
|
-
def __init__(self,
|
|
98
|
-
backend = backend or "httpx"
|
|
96
|
+
def __init__(self, sem_count=None) -> None:
|
|
99
97
|
sem_count = sem_count or common_globals.sem
|
|
100
|
-
super().__init__(sem_count=sem_count
|
|
98
|
+
super().__init__(sem_count=sem_count)
|
|
@@ -15,7 +15,7 @@ from ofscraper.classes.sessionmanager.sessionmanager import (
|
|
|
15
15
|
class OFSessionManager(sessionManager):
|
|
16
16
|
def __init__(
|
|
17
17
|
self,
|
|
18
|
-
|
|
18
|
+
|
|
19
19
|
connect_timeout=None,
|
|
20
20
|
total_timeout=None,
|
|
21
21
|
read_timeout=None,
|
|
@@ -50,7 +50,6 @@ class OFSessionManager(sessionManager):
|
|
|
50
50
|
wait_max if wait_max is not None else constants.getattr("OF_MAX_WAIT_API")
|
|
51
51
|
)
|
|
52
52
|
super().__init__(
|
|
53
|
-
backend,
|
|
54
53
|
connect_timeout,
|
|
55
54
|
total_timeout,
|
|
56
55
|
read_timeout,
|
{ofscraper-3.13.dev4 → ofscraper-3.13.dev5}/ofscraper/classes/sessionmanager/sessionmanager.py
RENAMED
|
@@ -1,24 +1,23 @@
|
|
|
1
1
|
import asyncio
|
|
2
2
|
import contextlib
|
|
3
3
|
import logging
|
|
4
|
-
import ssl
|
|
5
4
|
import threading
|
|
6
5
|
import time
|
|
7
6
|
import traceback
|
|
8
7
|
|
|
9
|
-
import aiohttp
|
|
10
8
|
import arrow
|
|
11
|
-
import certifi
|
|
12
9
|
import httpx
|
|
13
10
|
import tenacity
|
|
14
11
|
from tenacity import AsyncRetrying, Retrying, retry_if_not_exception_type
|
|
15
12
|
|
|
16
13
|
import ofscraper.utils.auth.request as auth_requests
|
|
17
|
-
import ofscraper.utils.config.data as data
|
|
18
14
|
import ofscraper.utils.constants as constants
|
|
19
15
|
from ofscraper.utils.auth.utils.warning.print import print_auth_warning
|
|
20
|
-
|
|
21
|
-
import
|
|
16
|
+
# from httpx_curl_cffi import AsyncCurlTransport, CurlOpt
|
|
17
|
+
from httpx_aiohttp import AiohttpTransport
|
|
18
|
+
from aiohttp import ClientSession
|
|
19
|
+
import aiohttp
|
|
20
|
+
|
|
22
21
|
|
|
23
22
|
|
|
24
23
|
TOO_MANY = "too_many"
|
|
@@ -27,7 +26,6 @@ FORCED_NEW = "get_new_sign"
|
|
|
27
26
|
SIGN = "get_sign"
|
|
28
27
|
COOKIES = "get_cookies_str"
|
|
29
28
|
HEADERS = "create_header"
|
|
30
|
-
AGENT=str(ua_generator.generate())
|
|
31
29
|
|
|
32
30
|
|
|
33
31
|
def is_rate_limited(exception, sleeper):
|
|
@@ -54,12 +52,6 @@ def check_400(exception):
|
|
|
54
52
|
|
|
55
53
|
def is_provided_exception_number(exception, *numbers):
|
|
56
54
|
return (
|
|
57
|
-
isinstance(exception, aiohttp.ClientResponseError)
|
|
58
|
-
and (
|
|
59
|
-
getattr(exception, "status_code", None)
|
|
60
|
-
or getattr(exception, "status", None) in numbers
|
|
61
|
-
)
|
|
62
|
-
) or (
|
|
63
55
|
isinstance(exception, httpx.HTTPStatusError)
|
|
64
56
|
and (
|
|
65
57
|
(
|
|
@@ -164,7 +156,6 @@ class CustomTenacity(AsyncRetrying):
|
|
|
164
156
|
class sessionManager:
|
|
165
157
|
def __init__(
|
|
166
158
|
self,
|
|
167
|
-
backend=None,
|
|
168
159
|
connect_timeout=None,
|
|
169
160
|
total_timeout=None,
|
|
170
161
|
read_timeout=None,
|
|
@@ -195,7 +186,6 @@ class sessionManager:
|
|
|
195
186
|
keep_alive_exp = keep_alive_exp or constants.getattr("KEEP_ALIVE_EXP")
|
|
196
187
|
proxy = proxy or constants.getattr("PROXY")
|
|
197
188
|
proxy_auth = proxy_auth or constants.getattr("PROXY_AUTH")
|
|
198
|
-
self._backend = backend or data.get_backend()
|
|
199
189
|
self._connect_timeout = connect_timeout
|
|
200
190
|
self._total_timeout = total_timeout
|
|
201
191
|
self._read_timeout = read_timeout
|
|
@@ -226,36 +216,31 @@ class sessionManager:
|
|
|
226
216
|
if self._session:
|
|
227
217
|
return
|
|
228
218
|
if async_:
|
|
229
|
-
self.
|
|
230
|
-
|
|
231
|
-
self.
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
),
|
|
244
|
-
)
|
|
219
|
+
self._session = httpx.AsyncClient(
|
|
220
|
+
# http2=True,
|
|
221
|
+
proxy=self._proxy,
|
|
222
|
+
limits=httpx.Limits(
|
|
223
|
+
max_keepalive_connections=self._keep_alive,
|
|
224
|
+
max_connections=self._connect_limit,
|
|
225
|
+
keepalive_expiry=self._keep_alive_exp,
|
|
226
|
+
),
|
|
227
|
+
transport=AiohttpTransport(
|
|
228
|
+
client=lambda: ClientSession( proxy=self._proxy,
|
|
229
|
+
connector=aiohttp.TCPConnector(limit=self._connect_limit)),
|
|
230
|
+
)
|
|
231
|
+
|
|
232
|
+
)
|
|
245
233
|
else:
|
|
246
|
-
self.
|
|
247
|
-
|
|
248
|
-
self.
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
)
|
|
257
|
-
elif self._backend == "aio":
|
|
258
|
-
raise Exception("aiohttp is async only")
|
|
234
|
+
self._session = httpx.Client(
|
|
235
|
+
# http2=True,
|
|
236
|
+
proxy=self._proxy,
|
|
237
|
+
limits=httpx.Limits(
|
|
238
|
+
max_keepalive_connections=self._keep_alive,
|
|
239
|
+
max_connections=self._connect_limit,
|
|
240
|
+
keepalive_expiry=self._keep_alive_exp,
|
|
241
|
+
),
|
|
242
|
+
)
|
|
243
|
+
self._async = async_
|
|
259
244
|
return self._session
|
|
260
245
|
|
|
261
246
|
# https://github.com/aio-libs/aiohttp/issues/1925
|
|
@@ -353,13 +338,7 @@ class sessionManager:
|
|
|
353
338
|
):
|
|
354
339
|
headers = self._create_headers(
|
|
355
340
|
headers, url, SIGN in actions, FORCED_NEW in actions
|
|
356
|
-
)
|
|
357
|
-
elif not headers or not "user-agent" in headers:
|
|
358
|
-
headers=headers or {}
|
|
359
|
-
headers.update({"user-agent":AGENT})
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
341
|
+
)
|
|
363
342
|
|
|
364
343
|
cookies = self._create_cookies() if COOKIES in actions else None
|
|
365
344
|
r = self._httpx_funct(
|
|
@@ -466,51 +445,27 @@ class sessionManager:
|
|
|
466
445
|
)
|
|
467
446
|
|
|
468
447
|
)
|
|
469
|
-
|
|
470
|
-
headers= headers or {}
|
|
471
|
-
headers.update({"user-agent":AGENT})
|
|
472
|
-
|
|
448
|
+
|
|
473
449
|
|
|
474
450
|
cookies = self._create_cookies() if COOKIES in actions else None
|
|
475
451
|
json = json
|
|
476
452
|
params = params
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
json=json,
|
|
494
|
-
data=data,
|
|
495
|
-
ssl=False if not settings.get_settings().ssl_validation else ssl.create_default_context(cafile=certifi.where()),
|
|
496
|
-
)
|
|
497
|
-
else:
|
|
498
|
-
r = await self._httpx_funct_async(
|
|
499
|
-
method,
|
|
500
|
-
timeout=httpx.Timeout(
|
|
501
|
-
total_timeout or self._total_timeout,
|
|
502
|
-
connect=connect_timeout or self._connect_timeout,
|
|
503
|
-
pool=pool_connect_timeout or self._pool_connect_timeout,
|
|
504
|
-
read=read_timeout or self._read_timeout,
|
|
505
|
-
),
|
|
506
|
-
follow_redirects=redirects,
|
|
507
|
-
url=url,
|
|
508
|
-
cookies=cookies,
|
|
509
|
-
headers=headers,
|
|
510
|
-
json=json,
|
|
511
|
-
params=params,
|
|
512
|
-
data=data,
|
|
513
|
-
)
|
|
453
|
+
r = await self._httpx_funct_async(
|
|
454
|
+
method,
|
|
455
|
+
timeout=httpx.Timeout(
|
|
456
|
+
total_timeout or self._total_timeout,
|
|
457
|
+
connect=connect_timeout or self._connect_timeout,
|
|
458
|
+
pool=pool_connect_timeout or self._pool_connect_timeout,
|
|
459
|
+
read=read_timeout or self._read_timeout,
|
|
460
|
+
),
|
|
461
|
+
follow_redirects=redirects,
|
|
462
|
+
url=url,
|
|
463
|
+
cookies=cookies,
|
|
464
|
+
headers=headers,
|
|
465
|
+
json=json,
|
|
466
|
+
params=params,
|
|
467
|
+
data=data,
|
|
468
|
+
)
|
|
514
469
|
if r.status_code == 404:
|
|
515
470
|
pass
|
|
516
471
|
elif not r.ok:
|
|
@@ -564,19 +519,6 @@ class sessionManager:
|
|
|
564
519
|
t.read_ = t.read
|
|
565
520
|
return t
|
|
566
521
|
|
|
567
|
-
async def _aio_funct(self, method, *args, **kwargs):
|
|
568
|
-
# public function forces context manager use
|
|
569
|
-
r = await self._session._request(method, *args, **kwargs)
|
|
570
|
-
r.text_ = r.text
|
|
571
|
-
r.json_ = r.json
|
|
572
|
-
r.iter_chunked = r.content.iter_chunked
|
|
573
|
-
r.iter_chunks = r.content.iter_chunks
|
|
574
|
-
r.request = r.request_info
|
|
575
|
-
r.status_code = r.status
|
|
576
|
-
r.read_ = r.content.read
|
|
577
|
-
r.eof = r.content.at_eof
|
|
578
|
-
return r
|
|
579
|
-
|
|
580
522
|
async def factoryasync(self, input):
|
|
581
523
|
if callable(input):
|
|
582
524
|
return input()
|
|
@@ -247,7 +247,7 @@ async def post_check_retriver():
|
|
|
247
247
|
user_dict = {}
|
|
248
248
|
links = list(url_helper())
|
|
249
249
|
async with manager.Manager.aget_ofsession(
|
|
250
|
-
|
|
250
|
+
|
|
251
251
|
sem_count=constants.getattr("API_REQ_CHECK_MAX"),
|
|
252
252
|
) as c:
|
|
253
253
|
for ele in links:
|
|
@@ -446,7 +446,7 @@ async def message_checker_runner():
|
|
|
446
446
|
async def message_check_retriver():
|
|
447
447
|
links = list(url_helper())
|
|
448
448
|
async with manager.Manager.aget_ofsession(
|
|
449
|
-
|
|
449
|
+
|
|
450
450
|
) as c:
|
|
451
451
|
for item in links:
|
|
452
452
|
num_match = re.search(
|
|
@@ -523,7 +523,7 @@ async def purchase_check_retriver():
|
|
|
523
523
|
user_dict = {}
|
|
524
524
|
auth_requests.make_headers()
|
|
525
525
|
async with manager.Manager.aget_ofsession(
|
|
526
|
-
|
|
526
|
+
|
|
527
527
|
sem_count=constants.getattr("API_REQ_CHECK_MAX"),
|
|
528
528
|
) as c:
|
|
529
529
|
for name in settings.get_settings().check_usernames:
|
|
@@ -578,7 +578,7 @@ async def stories_checker_runner():
|
|
|
578
578
|
async def stories_check_retriver():
|
|
579
579
|
user_dict = {}
|
|
580
580
|
async with manager.Manager.aget_ofsession(
|
|
581
|
-
|
|
581
|
+
|
|
582
582
|
sem_count=constants.getattr("API_REQ_CHECK_MAX"),
|
|
583
583
|
) as c:
|
|
584
584
|
for user_name in settings.get_settings().check_usernames:
|
|
@@ -662,7 +662,7 @@ async def get_paid_ids(model_id, user_name):
|
|
|
662
662
|
paid = oldpaid
|
|
663
663
|
else:
|
|
664
664
|
async with manager.Manager.aget_ofsession(
|
|
665
|
-
|
|
665
|
+
sem_count=constants.getattr("API_REQ_CHECK_MAX")
|
|
666
666
|
) as c:
|
|
667
667
|
paid = await paid_.get_paid_posts(model_id, user_name, c=c)
|
|
668
668
|
set_check(paid, model_id, paid_.API)
|
|
@@ -239,7 +239,7 @@ async def paid_failback(post_id, model_id, username):
|
|
|
239
239
|
)
|
|
240
240
|
post_id = str(post_id)
|
|
241
241
|
async with manager.Manager.aget_ofsession(
|
|
242
|
-
|
|
242
|
+
|
|
243
243
|
sem_count=constants.getattr("API_REQ_CHECK_MAX"),
|
|
244
244
|
) as c:
|
|
245
245
|
data = await paid.get_paid_posts(username, model_id, c=c) or []
|
|
@@ -106,7 +106,7 @@ def _like(model_id, username, ids: list, like_action: bool):
|
|
|
106
106
|
with progress_utils.setup_like_progress_live():
|
|
107
107
|
with manager.Manager.get_ofsession(
|
|
108
108
|
sem_count=1,
|
|
109
|
-
|
|
109
|
+
|
|
110
110
|
retries=constants.getattr("API_LIKE_NUM_TRIES"),
|
|
111
111
|
) as c:
|
|
112
112
|
tasks = []
|
|
@@ -24,7 +24,6 @@ PREMIUM_DEFAULT = "Premium"
|
|
|
24
24
|
KEYDB_DEFAULT = ""
|
|
25
25
|
FFMPEG_DEFAULT = ""
|
|
26
26
|
DISCORD_DEFAULT = ""
|
|
27
|
-
BACKEND_DEFAULT = "aio"
|
|
28
27
|
THREADS_DEFAULT = 2
|
|
29
28
|
DOWNLOAD_SEM_DEFAULT = 6
|
|
30
29
|
DYNAMIC_DEFAULT = "deviint"
|
|
@@ -32,7 +31,7 @@ TEXT_TYPE_DEFAULT = "letter"
|
|
|
32
31
|
TRUNCATION_DEFAULT = True
|
|
33
32
|
MAX_COUNT_DEFAULT = 0
|
|
34
33
|
TEMP_FOLDER_DEFAULT = None
|
|
35
|
-
|
|
34
|
+
ROTATE_DEFAULT = True
|
|
36
35
|
RESPONSE_TYPE_DEFAULT = {
|
|
37
36
|
"message": "Messages",
|
|
38
37
|
"timeline": "Posts",
|
|
@@ -21,7 +21,7 @@ log = logging.getLogger("shared")
|
|
|
21
21
|
|
|
22
22
|
def get_individual_timeline_post(id, session=None):
|
|
23
23
|
with session or manager.Manager.get_ofsession(
|
|
24
|
-
|
|
24
|
+
|
|
25
25
|
) as c:
|
|
26
26
|
with c.requests(constants.getattr("INDIVIDUAL_TIMELINE").format(id)) as r:
|
|
27
27
|
log.trace(f"post raw individual {r.json()}")
|
|
@@ -355,7 +355,7 @@ def get_individual_highlights(id):
|
|
|
355
355
|
|
|
356
356
|
def get_individual_stories(id, c=None):
|
|
357
357
|
with manager.Manager.get_ofsession(
|
|
358
|
-
|
|
358
|
+
|
|
359
359
|
) as c:
|
|
360
360
|
with c.requests_async(constants.getattr("storiesSPECIFIC").format(id)) as r:
|
|
361
361
|
log.trace(f"highlight raw highlight individual; {r.json_()}")
|
|
@@ -22,7 +22,7 @@ log = logging.getLogger("shared")
|
|
|
22
22
|
|
|
23
23
|
|
|
24
24
|
def scrape_user():
|
|
25
|
-
with manager.Manager.get_ofsession(
|
|
25
|
+
with manager.Manager.get_ofsession() as c:
|
|
26
26
|
return _scraper_user_helper(c)
|
|
27
27
|
|
|
28
28
|
|
|
@@ -49,7 +49,7 @@ def _scraper_user_helper(c):
|
|
|
49
49
|
|
|
50
50
|
def parse_subscriber_count():
|
|
51
51
|
with manager.Manager.get_ofsession(
|
|
52
|
-
|
|
52
|
+
|
|
53
53
|
) as c:
|
|
54
54
|
try:
|
|
55
55
|
with c.requests(constants.getattr("subscribeCountEP")) as r:
|
|
@@ -370,7 +370,7 @@ async def scrape_messages(c, model_id, message_id=None, required_ids=None) -> li
|
|
|
370
370
|
|
|
371
371
|
def get_individual_messages_post(model_id, postid):
|
|
372
372
|
with manager.Manager.get_ofsession(
|
|
373
|
-
|
|
373
|
+
|
|
374
374
|
) as c:
|
|
375
375
|
with c.requests(
|
|
376
376
|
url=constants.getattr("messageSPECIFIC").format(model_id, postid)
|
|
@@ -33,7 +33,7 @@ API = "profile"
|
|
|
33
33
|
# can get profile from username or id
|
|
34
34
|
def scrape_profile(username: Union[int, str]) -> dict:
|
|
35
35
|
with manager.Manager.get_ofsession(
|
|
36
|
-
|
|
36
|
+
|
|
37
37
|
) as c:
|
|
38
38
|
return scrape_profile_helper(c, username)
|
|
39
39
|
|
|
@@ -146,7 +146,7 @@ def print_profile_info(info):
|
|
|
146
146
|
|
|
147
147
|
def get_id(username, c=None):
|
|
148
148
|
c = c or manager.Manager.get_ofsession(
|
|
149
|
-
|
|
149
|
+
|
|
150
150
|
)
|
|
151
151
|
with c as c:
|
|
152
152
|
return get_id_helper(c, username)
|
|
@@ -93,10 +93,9 @@ def funct(prompt_):
|
|
|
93
93
|
[Advanced Options]
|
|
94
94
|
code-execution: allow eval on custom_val
|
|
95
95
|
dynamic-mode-default: source of signed header values
|
|
96
|
-
backend: which downloader to utilize
|
|
97
96
|
downloadbars: toggle for download-bars
|
|
98
97
|
cache-mode: cache type for Disk Cache
|
|
99
|
-
|
|
98
|
+
rotate_logs: toggle for rotating logs
|
|
100
99
|
custom_values: custom values/functions for placeholders
|
|
101
100
|
sanitize_text: toggle for cleaning text for db
|
|
102
101
|
temp_dir: directory for storing temp files
|
|
@@ -105,7 +104,6 @@ def funct(prompt_):
|
|
|
105
104
|
default_user_list: default user list for --action
|
|
106
105
|
default_black_list: default black list for --action
|
|
107
106
|
logs_expire_time: max age for a log before it is autodelete
|
|
108
|
-
ssl_validation: option for whether to validate ssl certificates
|
|
109
107
|
remove_hash_match: remove files if hash matches
|
|
110
108
|
----------------------------------------------------------
|
|
111
109
|
[Response Type]
|
|
@@ -538,13 +536,6 @@ def advanced_config() -> dict:
|
|
|
538
536
|
"default": data.cache_mode_helper(),
|
|
539
537
|
"choices": ["sqlite", "json", "disabled", "api_disabled"],
|
|
540
538
|
},
|
|
541
|
-
{
|
|
542
|
-
"type": "list",
|
|
543
|
-
"name": "backend",
|
|
544
|
-
"choices": [Choice("aio", "aiohttp"), Choice("httpx", "httpx")],
|
|
545
|
-
"message": "Select Which Backend you want:\n",
|
|
546
|
-
"default": data.get_backend() or "",
|
|
547
|
-
},
|
|
548
539
|
# value because of legacy config values
|
|
549
540
|
{
|
|
550
541
|
"type": "input",
|
|
@@ -582,9 +573,9 @@ def advanced_config() -> dict:
|
|
|
582
573
|
},
|
|
583
574
|
{
|
|
584
575
|
"type": "list",
|
|
585
|
-
"name": "
|
|
586
|
-
"message": "
|
|
587
|
-
"default": data.
|
|
576
|
+
"name": "rotate_logs",
|
|
577
|
+
"message": "Whether to rotate logs or not",
|
|
578
|
+
"default": data.get_rotate_logs(),
|
|
588
579
|
"choices": [Choice(True, "Yes"), Choice(False, "No")],
|
|
589
580
|
},
|
|
590
581
|
{
|
|
@@ -651,16 +642,6 @@ List are case insensitive\n
|
|
|
651
642
|
"option_instruction": """
|
|
652
643
|
Logs will auto delete after the selected amount of time has passed
|
|
653
644
|
If value is 'None' or '0' no logs will be touched
|
|
654
|
-
""",
|
|
655
|
-
},
|
|
656
|
-
|
|
657
|
-
{
|
|
658
|
-
"type": "input",
|
|
659
|
-
"name": "ssl_validation",
|
|
660
|
-
"message": "ssl validation",
|
|
661
|
-
"default": data.get_ssl_validation(),
|
|
662
|
-
"option_instruction": """
|
|
663
|
-
Option to disable ssl certificate validation
|
|
664
645
|
""",
|
|
665
646
|
},
|
|
666
647
|
{
|
|
@@ -11,6 +11,7 @@ import ofscraper.utils.auth.utils.prompt as auth_prompt
|
|
|
11
11
|
import ofscraper.utils.paths.common as common_paths
|
|
12
12
|
from ofscraper.utils.auth.utils.warning.check import check_auth_warning
|
|
13
13
|
from ofscraper.utils.auth.utils.warning.warning import authwarning
|
|
14
|
+
import ofscraper.utils.settings as settings
|
|
14
15
|
|
|
15
16
|
|
|
16
17
|
console = Console()
|
|
@@ -89,7 +89,7 @@ def get_request_auth_dynamic_rule_manual():
|
|
|
89
89
|
def get_request_auth_generic():
|
|
90
90
|
logging.getLogger("shared").debug("getting new signature with generic")
|
|
91
91
|
with manager.Manager.get_session(
|
|
92
|
-
|
|
92
|
+
|
|
93
93
|
retries=constants.getattr("GIT_NUM_TRIES"),
|
|
94
94
|
wait_min=constants.getattr("GIT_MIN_WAIT"),
|
|
95
95
|
wait_max=constants.getattr("GIT_MAX_WAIT"),
|
|
@@ -106,7 +106,7 @@ def get_request_auth_deviint():
|
|
|
106
106
|
logging.getLogger("shared").debug("getting new signature with deviint")
|
|
107
107
|
|
|
108
108
|
with manager.Manager.get_session(
|
|
109
|
-
|
|
109
|
+
|
|
110
110
|
retries=constants.getattr("GIT_NUM_TRIES"),
|
|
111
111
|
wait_min=constants.getattr("GIT_MIN_WAIT"),
|
|
112
112
|
wait_max=constants.getattr("GIT_MAX_WAIT"),
|
|
@@ -123,7 +123,7 @@ def get_request_auth_datawhores():
|
|
|
123
123
|
logging.getLogger("shared").debug("getting new signature with datawhores")
|
|
124
124
|
|
|
125
125
|
with manager.Manager.get_session(
|
|
126
|
-
|
|
126
|
+
|
|
127
127
|
retries=constants.getattr("GIT_NUM_TRIES"),
|
|
128
128
|
wait_min=constants.getattr("GIT_MIN_WAIT"),
|
|
129
129
|
wait_max=constants.getattr("GIT_MAX_WAIT"),
|
|
@@ -140,7 +140,7 @@ def get_request_auth_xagler():
|
|
|
140
140
|
logging.getLogger("shared").debug("getting new signature with xagler")
|
|
141
141
|
|
|
142
142
|
with manager.Manager.get_session(
|
|
143
|
-
|
|
143
|
+
|
|
144
144
|
retries=constants.getattr("GIT_NUM_TRIES"),
|
|
145
145
|
wait_min=constants.getattr("GIT_MIN_WAIT"),
|
|
146
146
|
wait_max=constants.getattr("GIT_MAX_WAIT"),
|
|
@@ -157,7 +157,7 @@ def get_request_auth_rafa():
|
|
|
157
157
|
logging.getLogger("shared").debug("getting new signature with rafa")
|
|
158
158
|
|
|
159
159
|
with manager.Manager.get_session(
|
|
160
|
-
|
|
160
|
+
|
|
161
161
|
retries=constants.getattr("GIT_NUM_TRIES"),
|
|
162
162
|
wait_min=constants.getattr("GIT_MIN_WAIT"),
|
|
163
163
|
wait_max=constants.getattr("GIT_MAX_WAIT"),
|
|
@@ -174,7 +174,7 @@ def get_request_auth_riley():
|
|
|
174
174
|
logging.getLogger("shared").debug("getting new signature with riley")
|
|
175
175
|
|
|
176
176
|
with manager.Manager.get_session(
|
|
177
|
-
|
|
177
|
+
|
|
178
178
|
retries=constants.getattr("GIT_NUM_TRIES"),
|
|
179
179
|
wait_min=constants.getattr("GIT_MIN_WAIT"),
|
|
180
180
|
wait_max=constants.getattr("GIT_MAX_WAIT"),
|
|
@@ -191,7 +191,7 @@ def get_request_auth_digitalcriminals():
|
|
|
191
191
|
logging.getLogger("shared").debug("getting new signature with digitalcriminals")
|
|
192
192
|
|
|
193
193
|
with manager.Manager.get_session(
|
|
194
|
-
|
|
194
|
+
|
|
195
195
|
retries=constants.getattr("GIT_NUM_TRIES"),
|
|
196
196
|
wait_min=constants.getattr("GIT_MIN_WAIT"),
|
|
197
197
|
wait_max=constants.getattr("GIT_MAX_WAIT"),
|
|
@@ -273,15 +273,6 @@ def get_logs_expire(config=None):
|
|
|
273
273
|
if not any(x == config.get("logs_expire_time") for x in [None, ""])
|
|
274
274
|
else config.get("advanced_options", {}).get("logs_expire_time")
|
|
275
275
|
)
|
|
276
|
-
|
|
277
|
-
@wrapper.config_reader
|
|
278
|
-
def get_ssl_validation(config=None):
|
|
279
|
-
val = (
|
|
280
|
-
config.get("ssl_validation")
|
|
281
|
-
if not any(x == config.get("ssl_validation") for x in [None, ""])
|
|
282
|
-
else config.get("advanced_options", {}).get("ssl_validation")
|
|
283
|
-
)
|
|
284
|
-
return val if val else True
|
|
285
276
|
@wrapper.config_reader
|
|
286
277
|
def get_post_download_script(config=None):
|
|
287
278
|
if config is False:
|
|
@@ -667,18 +658,6 @@ def get_part_file_clean(config=None, mediatype=None):
|
|
|
667
658
|
return config.get("partfileclean") is False
|
|
668
659
|
return constants_attr.getattr("RESUME_DEFAULT")
|
|
669
660
|
|
|
670
|
-
|
|
671
|
-
@wrapper.config_reader
|
|
672
|
-
def get_backend(config=None):
|
|
673
|
-
if config is False:
|
|
674
|
-
return constants.BACKEND_DEFAULT
|
|
675
|
-
return (
|
|
676
|
-
config.get("backend")
|
|
677
|
-
or config.get("advanced_options", {}).get("backend")
|
|
678
|
-
or constants_attr.getattr("BACKEND_DEFAULT")
|
|
679
|
-
)
|
|
680
|
-
|
|
681
|
-
|
|
682
661
|
@wrapper.config_reader
|
|
683
662
|
def get_download_semaphores(config=None):
|
|
684
663
|
if config is False:
|
|
@@ -734,15 +713,15 @@ def cache_mode_helper(config=None):
|
|
|
734
713
|
|
|
735
714
|
|
|
736
715
|
@wrapper.config_reader
|
|
737
|
-
def
|
|
716
|
+
def get_rotate_logs(config=None):
|
|
738
717
|
if config is False:
|
|
739
|
-
return constants.
|
|
718
|
+
return constants.ROTATE_DEFAULT
|
|
740
719
|
value = (
|
|
741
|
-
config.get("
|
|
720
|
+
config.get("rotate_logs")
|
|
742
721
|
if config.get("appendlog") is not None
|
|
743
|
-
else config.get("advanced_options", {}).get("
|
|
722
|
+
else config.get("advanced_options", {}).get("rotate_logs")
|
|
744
723
|
)
|
|
745
|
-
return value if value is not None else constants_attr.getattr("
|
|
724
|
+
return value if value is not None else constants_attr.getattr("ROTATE_DEFAULT")
|
|
746
725
|
|
|
747
726
|
|
|
748
727
|
@wrapper.config_reader
|
|
@@ -52,10 +52,9 @@ def get_current_config_schema(config: dict = None) -> dict:
|
|
|
52
52
|
"advanced_options": {
|
|
53
53
|
"code-execution": data.get_allow_code_execution(config=config),
|
|
54
54
|
"dynamic-mode-default": data.get_dynamic(config=config),
|
|
55
|
-
"backend": data.get_backend(config=config),
|
|
56
55
|
"downloadbars": data.get_show_downloadprogress(config=config),
|
|
57
56
|
"cache-mode": data.cache_mode_helper(config=config),
|
|
58
|
-
"
|
|
57
|
+
"rotate_logs": data.get_rotate_logs(config=config),
|
|
59
58
|
"custom_values": custom.get_custom(config=config),
|
|
60
59
|
"sanitize_text": data.get_sanitizeDB(config=config),
|
|
61
60
|
"temp_dir": data.get_TempDir(config=config),
|
|
@@ -65,7 +64,6 @@ def get_current_config_schema(config: dict = None) -> dict:
|
|
|
65
64
|
"default_user_list": data.get_default_userlist(config=config),
|
|
66
65
|
"default_black_list": data.get_default_blacklist(config=config),
|
|
67
66
|
"logs_expire_time":data.get_logs_expire(config=config),
|
|
68
|
-
"ssl_validation":data.get_ssl_validation(config=config)
|
|
69
67
|
},
|
|
70
68
|
"script_options": {
|
|
71
69
|
"post_download_script": data.get_post_download_script(config=config),
|