【发布时间】:2021-06-04 08:37:29
【问题描述】:
我正在尝试使用 python requests_html 模块 为给定的 url 运行 JS script,但几乎没有错误。
有人能帮帮我吗?
代码:-
from requests_html import HTMLSession
def rrr(request):
session = HTMLSession()
url = 'https://careers.microsoft.com/'
response = session.get(url)
script = """
() => {
return {
ans: window.location.href,
}
}
"""
ans = response.html.render(script=script)
return JsonResponse(ans, safe=False)
错误:-
File "/home/mahesh/anaconda3/lib/python3.7/site-packages/rest_framework/views.py", line 476, in raise_uncaught_exception
raise exc
File "/home/mahesh/anaconda3/lib/python3.7/site-packages/rest_framework/views.py", line 502, in dispatch
response = handler(request, *args, **kwargs)
File "/home/mahesh/anaconda3/lib/python3.7/site-packages/rest_framework/decorators.py", line 50, in handler
return func(*args, **kwargs)
File "/home/mahesh/Documents/dojo/dojo/dojo/tenants/api.py", line 242, in rrr
ans = response.html.render(script=script)
File "/home/mahesh/anaconda3/lib/python3.7/site-packages/requests_html.py", line 586, in render
self.browser = self.session.browser # Automatically create a event loop and browser
File "/home/mahesh/anaconda3/lib/python3.7/site-packages/requests_html.py", line 727, in browser
self.loop = asyncio.get_event_loop()
File "/home/mahesh/anaconda3/lib/python3.7/asyncio/events.py", line 644, in get_event_loop
% threading.current_thread().name)
RuntimeError: There is no current event loop in thread 'ThreadPoolExecutor-0_0'.
在终端运行时,运行良好,如下所示
【问题讨论】:
标签: python django python-asyncio event-loop python-requests-html