我希望实现request
对象的多线程或多处理。
我的代码如下:
def validate(testurl):
json_d = {"task_id": "user_uid","data": {"document1":testurl}}
response = requests.post("https://example.net.com/document",headers=headers,json=json_d)
my_data1 = response.text
with open("testurl.txt","a+") as file:
file.write(my_data1)
my_data = json.loads(my_data1)
result = {'bool_value':my_data['data']}
return result
有没有办法对超过 5000 个 url 的 Pandasapply()
函数进行多线程或多处理? 例如:
df['res'] = df['testurl'].apply(validate)
我应该在下面使用它吗?
from joblib import parallel, delayed
您可以使用swifter 或 dask 来执行此操作。 你可以参考 https://gdcoder.com/speed-up-pandas-apply-function-using-dask-or-swifter-tutorial/
df['res'] = df['testurl'].swifter.apply(lambda x: validate(x))