
Here is a .pl script I've rewritten which will monitor quake 4 servers using qstat on your web server. I threw it together rather quickly today for someone who was needing it, so please consider it a work in progress.
This script was derived from the late q3mon/qsmon and has now progressed into a full-fledged server monitor & browser.
Live Example (browser & monitor):

Server Monitor Only Example -- For those who only need q4mon to display the status of their server(s):
http://www.qxmon.net/q4mon-spy.pl
You can download the latest version here:
http://www.dev1ance.net/download/
The official $0.10 Readme file: here
Version 2.3b (Feb 15, 2007)
- Replaced autobalance info with si_fps info in browser popup layer. Does anyone really care about autobalance?
- si_tv (q4tv) info added to both browser and spy
- Updated code for compatibility with qstat 2.11.
- Spy now reads, calculates, sorts then displays additional player info (scores, team, status) given to it by q4max mod. gg q4max.
- Added q4 protocol 2.76 (1.4) support.
- Added si_fps info in spy
- Some new eyecandy here n there
Version 2.3a (Nov 18, 2006)
- Added xfire launch support
- Fixed html header on spy
- Added separators and js validation for gametype dropdown selection box
- Added buying mode settings for q4mon queries
- Added napalm launcher icon for ^iw10
- Added q4 protocol 2.71 (1.3) support.
- Added q4 protocol 2.69 (1.2) support.
- Added q4 protocol 2.68 (1.1 Final) support.
- Fixed some 'untidy' html code and hope to have xhtml compliance in the near future. Currently the layers won't work @ xhtml.
- Fixed names that were enclosed in < and > tags that were not being displayed
Version 2.2h (Feb 25, 2006)
- Latest Point Releases added for compatibility (=>1.1)
- Added mod images for the popup layer in browser
- Added optional GeoIP City, Region and ISP
- Added add/remove favs via q4mon-spy
- Added mod url links
- Added more icons to spy
- Added launcher to spy
- Added an 'instant connect' checkbox for the launcher function. This value will be perm saved in a cookie.
Version 2.2b (December 02, 2005)
- Ability to enable/disable GeoIP lookups. It will now run if you don't want to install the GeoIP module/api.
- Fixed continuous scrollbars to be displayed after the server info popup layer became hidden.
- Finally decided to write the ^+ and ^- gradient codes. These colors will now display properly.
- Fixed improperly displayed os. Now calculating info from si_version rather than osmask.
- Added q4 demo listings (protocols 2.64 and 2.66)
- Added find player/clan function
- Fixed improperly displayed weapon icons
- Server 'popup' now shows player names
- Changed layout of search header
- Added the ability to set,store and monitor favorites. (cookies)
- Join server button added. 3 selectable lauchers: qtracker, kquery and hlsw.
- Added GeoIP module to display/search/sort by server country name and to display country flags in results.
- Added server listing query/generation time
Version 2.0a (November 12, 2005)
- browser: Big changes to browser interface
- browser: Added custom server ip/host query form
- q4mon-grey.css stylesheet is useless unless someone wants to skin this new layout. It will still work for q4mon-spy.pl for the time being, so I've included it with this release if that's all you need.
Version 1.1c (November 9, 2005)
- browser: Added a rollover popup box to display server info and map image
- browser: Fixed a few hard coded image urls
Version 1.1b (November 8, 2005)
- Added additional skin/css (q4mon-grey.css)
Version 1.1a (November 8, 2005)
- Fixed a small typo in linking css. Firefox wasn't forgiving.
Version 1.1 (November 8, 2005)
- browser: q4mon browser created from scratch.
- browser: Master server caching script created for the browser
- spy: q4mon-spy (formerly known as q4mon.pl) has undergone a face lift.
- spy: Many more server settings are now displayed in spy.
- spy: New progress-meter'like bar added for current players / max players
- grey css/theme has not been included as I haven't had time to skin the browser yet
Version 0.4 (Nov 2, 2005)
- q4mon will now display a default 'no image' jpeg for servers using maps that don't have a levelshot in images_q4mon.
- Added misc icons for ^ivce ^ivcd ^ifdd ^ifde ^ifls ^iflm ^irgn ^idbl ^igrd ^isct ^ipbe ^idse ^ipse ^ifve ^idm0 ^idm1 and ^iarr.
Version 0.3 (Oct 30, 2005)
- Fixed name coloring function. Names were being displayed incorrectly when using lone ^'s.
- Added optional nametitles to display actual name/clan setting including color codes.
- Added weapon icons for ^iw tags.
Version 0.2 (Oct 28, 2005)
- Added private slots to be displayed based on si_numPlayers - si_maxPlayers.
- Added GET requests for customized server listings.
- Fixed ^c[RGB]

- Added additional server info. .Administrator .Location .URL