- Python 100%
| .github/workflows | ||
| src/rule34_posts_wrapper | ||
| tests | ||
| .gitignore | ||
| .pre-commit-config.yaml | ||
| cover.png | ||
| LICENSE | ||
| README.md | ||
| setup.py | ||
| tox.ini | ||
Rule34 posts wrapper
This is a rule34.paheal.net wrapper that turns your query into an iterable list of posts with the most important information about them.
Consider supporting this project. You can buy me a cup of tea (I don't drink coffee).
- Bitcoin: bc1qmr5m0z4p0gzqnfrztamrrpmgkw79725dsqdp03
- Ethereum: 0xb0627eBDb226b4D972661637091573596c5B3B7a
Installation
To install:
pip install rule34-posts-wrapper
Or for development/testing purposes, clone and run:
pip install -e .[development]
pre-commit install
Usage
PostsWrapper
To start import PostsWrapper and call it:
from rule34_posts_wrapper import PostsWrapper
posts = PostsWrapper(['your', 'query', 'here'])[0].file
Note that there is no authentication for now so you can't use more than three tags in your query.
Now you can iterate the posts in cycle:
for post in posts:
print(str(post.file) + " - " + " ".join(post.tags)) # Do whatever you want with Post object
Also you can just interact with it like list
first_post = posts[0]
print(str(first_post.thumbnail))
Note that all URLs are urllib3.util.Url, call str(posts[x].link) to convert it to str.
TagsWrapper
Like PostsWrapper, TagsWrapper provides you iterable list of Tag's:
from rule34_posts_wrapper import TagsWrapper
tags = TagsWrapper("Your_Query_Here")
print(f"Found {len(tags)} tags:", end="\n\n")
for tag in tags:
print(f"Tag: {tag.name}, Count: {tag.count}")
It uses rule34.paheal.net autocomplete that helps you find tags by it's starting substring.
Testing
To run all tests, just use this command:
tox -e py
