\[ y'(x)=\frac {1}{x y(x) \left (x y(x)^2+x+1\right )} \] ✓ Mathematica : cpu = 0.145556 (sec), leaf count = 76
\[\left \{\left \{y(x)\to -\frac {\sqrt {2 x W\left (c_1 e^{\frac {1}{2 x}-\frac {1}{2}}\right )+x-1}}{\sqrt {x}}\right \},\left \{y(x)\to \frac {\sqrt {2 x W\left (c_1 e^{\frac {1}{2 x}-\frac {1}{2}}\right )+x-1}}{\sqrt {x}}\right \}\right \}\] ✓ Maple : cpu = 0.205 (sec), leaf count = 62
\[ \left \{ y \left ( x \right ) ={\frac {1}{x}\sqrt {x \left ( 2\,{\it lambertW} \left ( 1/2\,{\it \_C1}\,{{\rm e}^{-1/2\,{\frac {x-1}{x}}}} \right ) x+x-1 \right ) }},y \left ( x \right ) =-{\frac {1}{x}\sqrt {x \left ( 2\,{\it lambertW} \left ( 1/2\,{\it \_C1}\,{{\rm e}^{-1/2\,{\frac {x-1}{x}}}} \right ) x+x-1 \right ) }} \right \} \]