Let G = (V, E) be a simple graph and \(\mathbf {w}\in \mathbb {Z}^{E}_{>0}\) assign each edge e ∈ E a positive integer weight w(e). A subset of E that intersects every triangle of G is called a triangle cover of (G, w), and its weight is the total weight of its edges. A collection of triangles in G (repetition allowed) is called a triangle packing of (G, w) if each edge e ∈ E appears in at most w(e) members of the collection. Let τ t (G, w) and ν t (G, w) denote the minimum weight of a triangle cover and the maximum cardinality of a triangle packing of (G, w), respectively. Generalizing Tuza’s conjecture for unit weight, Chapuy et al. conjectured that τ t (G, w)/ν t (G, w) ≤ 2 holds for every simple graph G and every \(\mathbf {w}\in \mathbb {Z}^{E}_{>0}\). In this paper, using a hypergraph approach, we design polynomial-time combinatorial algorithms for finding triangle covers of small weights. These algorithms imply new sufficient conditions for the conjecture of Chapuy et al. More precisely, given (G, w), suppose that all edges of G are covered by the set \({\mathscr {T}}_{G}\) consisting of edge sets of triangles in G. Let \(|E|_{w}={\sum }_{e\in E}w(e)\) and \(|{\mathscr {T}}_{G}|_{w}={\sum }_{\{e,f,g\}\in {\mathscr {T}}_{G}}w(e)w(f)w(g)\) denote the weighted numbers of edges and triangles in (G, w), respectively. We show that a triangle cover of (G, w) of weight at most 2ν t (G, w) can be found in strongly polynomial time if one of the following conditions is satisfied: (i) \(\nu _{t}(G,\mathbf {w})/|{\mathscr {T}}_{G}|_{w}\ge \frac {1}{3}\), (ii) \(\nu _{t}(G,\mathbf {w})/|E|_{w}\ge \frac {1}{4}\), (iii) \(|E|_{w}/|{\mathscr {T}}_{G}|_{w}\ge 2\).