Filling Two Knapsacks with greedy algorithm

I got the next problem, Where I have two instead of one knapsack. Formally, we have items 1, . . . , n and each item i has a positive integer weight wi ∈ N and a positive value vi > 0. Further, we have two knapsacks of capacities W1 and W2. We need to pack the items into the knapsacks to find the maximum cost of objects can be prepared for both knapsack.
(it’s allowed to break any items between 0 to 1)

The question is there is any greedy algorithm that solves this problem?