If you have tried to scrape G2 reviews with a quick requests.get(), you already know how it goes: a 403, a CAPTCHA, or a blank page. G2 is one of the tougher public sites to pull at scale. But the data behind it (ratings, structured pros and cons, and which competitor a reviewer switched away from and why) is worth the trouble if you do any competitive intelligence.

This guide covers what a G2 review actually contains, why the naive approach fails, a Python path that works, a no-code shortcut, and a plain comparison so you can pick the right route. If you want a deeper field reference, there is a longer guide to scraping G2 reviews too.

What a G2 review actually contains

One G2 review holds more than it looks. Per review you can pull:

Overall rating (1 to 5) plus six sub-ratings (ease of use, ease of setup, quality of support, meets requirements, and more)