Python’s official documentation states that if you do not specify a timeout, then it will use the timeout value of the socket. And the socket is actually provided by the operating system, so the timeout value depends on the operating system.
It is possible that your task happens to be within the socket timeout of Windows but outside the socket timeout of Linux.
You can print out the download link to see if there are spaces or abnormal characters in it. I have encountered this situation. Because urlopen does not support paths with spaces.
Python’s official documentation states that if you do not specify a timeout, then it will use the timeout value of the socket. And the socket is actually provided by the operating system, so the timeout value depends on the operating system.
It is possible that your task happens to be within the socket timeout of Windows but outside the socket timeout of Linux.
You can print out the download link to see if there are spaces or abnormal characters in it. I have encountered this situation. Because urlopen does not support paths with spaces.