Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Asyncio Version? #20

Open
PythonLinks opened this issue Jun 10, 2020 · 4 comments
Open

Asyncio Version? #20

PythonLinks opened this issue Jun 10, 2020 · 4 comments

Comments

@PythonLinks
Copy link

Thank you for all of this great code. It works great.
Now I just need to figure out how to make this work in an asyncio environment.

@vduseev
Copy link
Collaborator

vduseev commented May 24, 2022

@PythonLinks, I know it's been 2 years since the original question, but could you describe what specific kind of async functionality are you interested in?

  • parsing: Since the parsing is done using BeautifulSoup library, that part can't really be optimized for the async purposes. It would still execute without awaiting something as a sync chunk of code.
  • requests: That can be replaced with grequests or aiohttp package. Which would make the GET request part async. I would personally go with aiohttp as it does not bring binary or other dependencies unlike grequests does and it's more popular.

That also means that you can already do that yourself, by requesting the contents of the page asynchronously in your own code and then simply supplying it to the web_preview function as a content argument.

If we try to add the async requests functionality, that would need to be installed as an extra with the following syntax:

pip install webpreview[async]
# Or
pip install webpreview[aiohttp]

@PythonLinks
Copy link
Author

Hi. Great to hear from you. Have two years of covid isolation already passed us. I got it all working.

Sure I can do it myself, in fact I did get it working myself, but it would be just a bit simpler interface if there were an asyncio api.

@vduseev
Copy link
Collaborator

vduseev commented May 25, 2022

@PythonLinks, good point 👍 Having it as an option, when using the library in the async environment, could be a nice addition to the out of the box functionality.

@aviadpriel
Copy link

I just extracted the relevant functions and used HTTPX for fetch the data

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants