What morphisms induce injective/surjective maps on (Weil) cohomology?
Kleiman, Algebraic Cycles and the Weil Conjectures, Proposition 1.2.4: Let $f: X \to Y$ be surjective. Then $f^*: H^*(Y) \to H^*(X)$ is injective.
Let me recall the proof.
Let $x$ be a closed point of the generic fibre of $f$ and set $Z := \overline{\{z\}} \subseteq X$ and let $z = cl(Z)$ be the cycle class of $Z$. Since the cycle class map commutes with $f_*$, one has $f_*(z) \neq 0$.
Now assume $a \in H^*(Y)$ is in the kernel of $f^*$. Then one has $f^*(ab)z = f^*(a)f^*(b)z = 0$ for every $b \in H^*(Y)$, so by the projection formula $0 = f_*(f^*(ab)z) = abf_*(z)$, so by Poincaré duality $a = 0$.
For posterity, and as it was a bit tricky to find a reference, note also that the statement holds for possibly non-projective, quasi-projective smooth varieties, or, more generally for non-compact smooth Kähler manifolds:
Theorem (Wells): Let $f:X\to Y$ be a proper surjective morphism of smooth complex manifolds and assume that $X$ is Kähler. Then the following induced homomorphisms are injective
- $f^*:H^q(Y,\Omega^p_Y)\to H^q(X,\Omega^p_X)$
- $f^*:H^k(Y,\mathbb{C})\to H^k(X,\mathbb{C})$
- $f^*:H^k(Y,\Omega^p_Y(E))\to H^k(X,\Omega^p_X(f^*E))$ for a holomorphic vector bundle $E$.
The reference is Wells Comparison of de Rham and Dolbeault cohomology for proper surjective mappings.
I do not know any effective, general criterion. But the Lefschetz hyperplane theorem for complex algebraic varieties tells you that if you have a hyperplane section $X\subset Y$ where $Y$ is a complex projective algebraic smooth variety of dimension $n$ such that $Y-X$ is smooth then the induced map $$H^*(Y,\mathbb{Z})\rightarrow H^*(X,\mathbb{Z})$$ is an isomorphism for $*<n-1$ and an injection for $*=n-1$.
...................
Edit: Let $Y$ be a smooth complex projective variety and let $D$ be a normal crossing divisor ($dim_{\mathbb{C}}(Y)=n$). If the contraction $Y/D$ is algebraic projective and if the map $Y\rightarrow Y/D$ is also algebraic then $$H^i(Y,\mathbb{C})\rightarrow H^i(D,\mathbb{C})$$ is surjective for $i\geq n$.