[{"COMMENT":"game of trees version control system","COMMENT_MATCH":"game of trees version control system","DESCRIPTION":"Game of Trees (Got) is a version control system which prioritizes\nease of use and simplicity over flexibility.\n\nGot is still under development; it is being developed exclusively\non OpenBSD and its target audience are OpenBSD developers. Got is\nISC-licensed and was designed with pledge(2) and unveil(2) in mind.\n\nGot uses Git repositories to store versioned data. Git can be used\nfor any functionality which has not yet been implemented in Got.\nIt will always remain possible to work with both Got and Git on\nthe same repository.\n\nThis package includes the got(1) command-line interface and the\ntog(1) read-only repository browser. EXAMPLES in the got(1) man\npage contains a quick-start guide for OpenBSD developers.\n","DESCR_MATCH":"Game of Trees (<strong>Got<\/strong>) is a version control system which prioritizes<br \/>ease of use and simplicity over flexibility.<br \/><br \/><strong>Got<\/strong> is still under development; it is being developed exclusively<br \/>on OpenBSD and its target audience are OpenBSD developers. <strong>Got<\/strong> is<br \/>ISC-licensed and was designed with pledge(2) and unveil(2) in mind.<br \/><br \/><strong>Got<\/strong> uses Git repositories to store versioned data. Git can be used<br \/>for any functionality which has not yet been implemented in <strong>Got<\/strong>.<br \/>It will always remain possible to work with both <strong>Got<\/strong> and Git on<br \/>the same repository.<br \/><br \/>This package includes the <strong>got<\/strong>(1) command-line interface and the<br \/>tog(1) read-only repository browser. EXAMPLES in the <strong>got<\/strong>(1) man<br \/>page contains a quick-start guide for OpenBSD developers.<br \/>","FULLPKGNAME":"got-0.120","FULLPKGPATH":"devel\/got","HOMEPAGE":"https:\/\/gameoftrees.org"},{"COMMENT":"Lode Runner clone","COMMENT_MATCH":"Lode Runner clone","DESCRIPTION":"Scavenger is a cool arcade\/thinking game very much like Lode\nRunner.  You've got to run around and collect objects while\navoiding enemies.  Some objects are buried and you've got to\ndig down to get at them.  It's an addictive game and some of\nthe levels are devilishly (cruelly) complicated to solve.\n","DESCR_MATCH":"Scavenger is a cool arcade\/thinking game very much like Lode<br \/>Runner.  You&#39;ve <strong>got<\/strong> to run around and collect objects while<br \/>avoiding enemies.  Some objects are buried and you&#39;ve <strong>got<\/strong> to<br \/>dig down to get at them.  It&#39;s an addictive game and some of<br \/>the levels are devilishly (cruelly) complicated to solve.<br \/>","FULLPKGNAME":"xscavenger-1.4.4p3","FULLPKGPATH":"games\/xscavenger","HOMEPAGE":"http:\/\/www.xdr.com\/dash\/scavenger.html"},{"COMMENT":"game of trees repository fast-cgi server","COMMENT_MATCH":"game of trees repository fast-cgi server","DESCRIPTION":"Game of Trees Web Daemon (gotwebd) is a Fast-CGI server which displays\nGit repository data and is designed to work with httpd(8).\n","DESCR_MATCH":"Game of Trees Web Daemon (gotwebd) is a Fast-CGI server which displays<br \/>Git repository data and is designed to work with httpd(8).<br \/>","FULLPKGNAME":"gotwebd-0.120","FULLPKGPATH":"devel\/got,-webd","HOMEPAGE":"https:\/\/gameoftrees.org"},{"COMMENT":"perl module to implementing delay loading of object-data","COMMENT_MATCH":"perl module to implementing delay loading of object-data","DESCRIPTION":"This module helps you implementing delay loading of object-data.\nWhile creating a stub-object, Object::Realize::Later simulates you\ngot the real data.\n","DESCR_MATCH":"This module helps you implementing delay loading of object-data.<br \/>While creating a stub-object, Object::Realize::Later simulates you<br \/><strong>got<\/strong> the real data.<br \/>","FULLPKGNAME":"p5-Object-Realize-0.21p0","FULLPKGPATH":"devel\/p5-Object-Realize","HOMEPAGE":"http:\/\/perl.overmeer.net\/"},{"COMMENT":"ncurses-based music player","COMMENT_MATCH":"ncurses-based music player","DESCRIPTION":"cmus is a small ncurses-based music player. It supports various output\nmethods by output plugins. It has got completely configurable key\nbindings and it can be controlled from the outside via cmus-remote(1).\n","DESCR_MATCH":"cmus is a small ncurses-based music player. It supports various output<br \/>methods by output plugins. It has <strong>got<\/strong> completely configurable key<br \/>bindings and it can be controlled from the outside via cmus-remote(1).<br \/>","FULLPKGNAME":"cmus-2.12.0","FULLPKGPATH":"audio\/cmus","HOMEPAGE":"https:\/\/cmus.github.io\/"},{"COMMENT":"enhancing Test::More for UTF8-based projects","COMMENT_MATCH":"enhancing Test::More for UTF8-based projects","DESCRIPTION":"use Test::More;\nuse Test::More::UTF8;\n\n# now we can easily use flagged strings without warnings like \"Wide character\nin print ...\"\nis(\"\\x{410}\",\"\\x{420}\"); # got a failure message without warnings\n","DESCR_MATCH":"use Test::More;<br \/>use Test::More::UTF8;<br \/><br \/># now we can easily use flagged strings without warnings like &quot;Wide character<br \/>in print ...&quot;<br \/>is(&quot;\\x&#123;410&#125;&quot;,&quot;\\x&#123;420&#125;&quot;); # <strong>got<\/strong> a failure message without warnings<br \/>","FULLPKGNAME":"p5-Test-More-UTF8-0.05p0","FULLPKGPATH":"devel\/p5-Test-More-UTF8","HOMEPAGE":"https:\/\/metacpan.org\/release\/Test-More-UTF8"},{"COMMENT":"astrosmash clone for X","COMMENT_MATCH":"astrosmash clone for X","DESCRIPTION":"Cosmosmash is a clone of the 1981 Astrosmash video game. Spin, Blast and shoot\nyour way through a hostile universe of tumbling asteroids and homicidal aliens.\nYou've got the wits and the speed, but you're awesomely outnumbered.\n","DESCR_MATCH":"Cosmosmash is a clone of the 1981 Astrosmash video game. Spin, Blast and shoot<br \/>your way through a hostile universe of tumbling asteroids and homicidal aliens.<br \/>You&#39;ve <strong>got<\/strong> the wits and the speed, but you&#39;re awesomely outnumbered.<br \/>","FULLPKGNAME":"cosmosmash-1.5.0","FULLPKGPATH":"games\/cosmosmash","HOMEPAGE":"http:\/\/perso.b2b2c.ca\/~sarrazip\/dev\/cosmosmash.html"},{"COMMENT":"create\/update ZIP files compatible with PKZip(tm)","COMMENT_MATCH":"create\/update ZIP files compatible with PKZip(tm)","DESCRIPTION":"Zip is a compression and file packaging utility.  It is compatible with\nPKZIP 2.04g (Phil Katz ZIP) for MSDOS systems.  There is a companion to zip\ncalled unzip (of course) which you should be able to find the same place\nyou got zip.\n","DESCR_MATCH":"Zip is a compression and file packaging utility.  It is compatible with<br \/>PKZIP 2.04g (Phil Katz ZIP) for MSDOS systems.  There is a companion to zip<br \/>called unzip (of course) which you should be able to find the same place<br \/>you <strong>got<\/strong> zip.<br \/>","FULLPKGNAME":"zip-3.0p3","FULLPKGPATH":"archivers\/zip","HOMEPAGE":"https:\/\/infozip.sourceforge.net\/"},{"COMMENT":"game of trees repository server","COMMENT_MATCH":"game of trees repository server","DESCRIPTION":"gotd(8) is the Game of Trees Git repository server.\n\ngotd(8) makes Git repositories reachable over the network via ssh(1).\nThe plaintext git:\/\/ and HTTP\/HTTPS protocols are intentionally not\nsupported.\n\nDocumentation is provided in manual pages installed by this package:\ngotsh(1), gotd.conf(5), gotd(8), gotctl(8)\n","DESCR_MATCH":"gotd(8) is the Game of Trees Git repository server.<br \/><br \/>gotd(8) makes Git repositories reachable over the network via ssh(1).<br \/>The plaintext git:\/\/ and HTTP\/HTTPS protocols are intentionally not<br \/>supported.<br \/><br \/>Documentation is provided in manual pages installed by this package:<br \/>gotsh(1), gotd.conf(5), gotd(8), gotctl(8)<br \/>","FULLPKGNAME":"gotd-0.120","FULLPKGPATH":"devel\/got,-server","HOMEPAGE":"https:\/\/gameoftrees.org"},{"COMMENT":"online Image GALlery generator","COMMENT_MATCH":"online Image GALlery generator","DESCRIPTION":"iGal is a Perl program that can generate and publish an entire online\npicture show (static HTML slides, thumbnails and index page) with just\none command line invocation. If you've got a directory (or several) full\nof image files that are waiting to be put online and shared with\nfriends, then iGal is for you.\n","DESCR_MATCH":"iGal is a Perl program that can generate and publish an entire online<br \/>picture show (static HTML slides, thumbnails and index page) with just<br \/>one command line invocation. If you&#39;ve <strong>got<\/strong> a directory (or several) full<br \/>of image files that are waiting to be put online and shared with<br \/>friends, then iGal is for you.<br \/>","FULLPKGNAME":"igal-1.4.7p2","FULLPKGPATH":"www\/igal","HOMEPAGE":"http:\/\/trexler.at\/igal\/"},{"COMMENT":"decorator for caching properties in classes","COMMENT_MATCH":"decorator for caching properties in classes","DESCRIPTION":"A decorator for caching properties in classes.\n\nWhy ?\n\n- Makes caching of time or computational expensive properties quick and easy.\n- Because I got tired of copy\/pasting this code from non-web project to non-web\n  project.\n- I needed something really simple that worked in Python 2 and 3.\n","DESCR_MATCH":"A decorator for caching properties in classes.<br \/><br \/>Why ?<br \/><br \/>- Makes caching of time or computational expensive properties quick and easy.<br \/>- Because I <strong>got<\/strong> tired of copy\/pasting this code from non-web project to non-web<br \/>  project.<br \/>- I needed something really simple that worked in Python 2 and 3.<br \/>","FULLPKGNAME":"py3-cached-property-2.0.1p0","FULLPKGPATH":"devel\/py-cached-property","HOMEPAGE":"https:\/\/pypi.python.org\/pypi\/cached_property"},{"COMMENT":"list block devices","COMMENT_MATCH":"list block devices","DESCRIPTION":"Show information about block devices that are attached to the system,\nincluding name, size, type, and information about the disklabel on them,\nsuch as name, size, type, and mount point of each partition.\nBecause it accesses the raw disk devices, it must be run as root.\n\nThis is an incompatible clone of util-linux's lsblk(8) for OpenBSD.\n","DESCR_MATCH":"Show information about block devices that are attached to the system,<br \/>including name, size, type, and information about the disklabel on them,<br \/>such as name, size, type, and mount point of each partition.<br \/>Because it accesses the raw disk devices, it must be run as root.<br \/><br \/>This is an incompatible clone of util-linux&#39;s lsblk(8) for OpenBSD.<br \/>","FULLPKGNAME":"lsblk-1.3.1p0","FULLPKGPATH":"sysutils\/lsblk","HOMEPAGE":"https:\/\/got.stuerz.xyz\/?action=summary&path=lsblk.git"},{"COMMENT":"game of trees system management daemon","COMMENT_MATCH":"game of trees system management daemon","DESCRIPTION":"gotsysd(8) is the Game of Trees System management daemon.\n\ngotsysd(8) allows managing a gotd(8) server without having direct shell\naccess to the OpenBSD system which runs gotd(8). Service administrators\nmanage the gotd(8) server by committing changes to gotsys.conf(5) in the\nspecial gotsys.git repository, rather than via a root shell.\n\ngotsysd(8) supports the creation of Git repositories, the creation of\nuser accounts running gotsh(1), setting repository access permissions,\nand more.\n","DESCR_MATCH":"gotsysd(8) is the Game of Trees System management daemon.<br \/><br \/>gotsysd(8) allows managing a gotd(8) server without having direct shell<br \/>access to the OpenBSD system which runs gotd(8). Service administrators<br \/>manage the gotd(8) server by committing changes to gotsys.conf(5) in the<br \/>special gotsys.git repository, rather than via a root shell.<br \/><br \/>gotsysd(8) supports the creation of Git repositories, the creation of<br \/>user accounts running gotsh(1), setting repository access permissions,<br \/>and more.<br \/>","FULLPKGNAME":"gotsysd-0.120","FULLPKGPATH":"devel\/got,-sysd","HOMEPAGE":"https:\/\/gameoftrees.org"},{"COMMENT":"invoke an appropriate Git repository server","COMMENT_MATCH":"invoke an appropriate Git repository server","DESCRIPTION":"The gitwrapper program is designed to replace git-upload-pack(1) and\ngit-receive-pack(1) and to invoke an appropriate Git server based on\nconfiguration information placed in gotd.conf(5).  This permits the\nadministrator to configure which Git server is to be invoked on the\nsystem at run-time.  Git repositories which are listed in gotd.conf(5)\nand exist on the filesystem will be served by gotsh(1).  Any other Git\nrepositories will be served by git-upload-pack(1) and\ngit-receive-pack(1).\n","DESCR_MATCH":"The gitwrapper program is designed to replace git-upload-pack(1) and<br \/>git-receive-pack(1) and to invoke an appropriate Git server based on<br \/>configuration information placed in gotd.conf(5).  This permits the<br \/>administrator to configure which Git server is to be invoked on the<br \/>system at run-time.  Git repositories which are listed in gotd.conf(5)<br \/>and exist on the filesystem will be served by gotsh(1).  Any other Git<br \/>repositories will be served by git-upload-pack(1) and<br \/>git-receive-pack(1).<br \/>","FULLPKGNAME":"gitwrapper-0.120","FULLPKGPATH":"devel\/got,-gitwrapper","HOMEPAGE":"https:\/\/gameoftrees.org"},{"COMMENT":"manage passwords","COMMENT_MATCH":"manage passwords","DESCRIPTION":"plass is a password manager inspired by password-store in the essence\nbut completely reimplemented with a smaller and cleaner interface.  It\ndoesn't have fancy trees nor colors in the output; the absence of these\nis considered a feature.\n\nWith plass every password lives inside a gpg(1) encrypted file somewhere\ninside ~\/.password-store which is managed with the got(1) VCS to keep\ntrack of changes, recover accidental overwrites and synchronize it\nacross devices.\n\nTwo helper utilities are bundled:\n\n - pwg(1): password and passphrase generator\n - totp(1): TOTP generator\n","DESCR_MATCH":"plass is a password manager inspired by password-store in the essence<br \/>but completely reimplemented with a smaller and cleaner interface.  It<br \/>doesn&#39;t have fancy trees nor colors in the output; the absence of these<br \/>is considered a feature.<br \/><br \/>With plass every password lives inside a gpg(1) encrypted file somewhere<br \/>inside ~\/.password-store which is managed with the <strong>got<\/strong>(1) VCS to keep<br \/>track of changes, recover accidental overwrites and synchronize it<br \/>across devices.<br \/><br \/>Two helper utilities are bundled:<br \/><br \/> - pwg(1): password and passphrase generator<br \/> - totp(1): TOTP generator<br \/>","FULLPKGNAME":"plass-1.0","FULLPKGPATH":"security\/plass","HOMEPAGE":"https:\/\/projects.omarpolo.com\/plass.html"},{"COMMENT":"add line information to XML parse errors","COMMENT_MATCH":"add line information to XML parse errors","DESCRIPTION":"This module implements a SAX filter which adds line-numbers and\ncolumn-numbers to errors generated by SAX handlers further down the\npipeline. Written explicitly  so that XML::Validator::Schema could\nblame the correct line of XML for validation failures.\n\nNOTE: This module requires a SAX parser which correctly supports the\nset_document_locator() call.  At present there is just one,\nXML::SAX::ExpatXS.  If you've got a number of XML::SAX parsers\ninstalled and you want to make sure XML::SAX::ExpatXS is used, do\nthis:\n\n   $XML::SAX::ParserPackage = 'XML::SAX::ExpatXS';\n","DESCR_MATCH":"This module implements a SAX filter which adds line-numbers and<br \/>column-numbers to errors generated by SAX handlers further down the<br \/>pipeline. Written explicitly  so that XML::Validator::Schema could<br \/>blame the correct line of XML for validation failures.<br \/><br \/>NOTE: This module requires a SAX parser which correctly supports the<br \/>set_document_locator() call.  At present there is just one,<br \/>XML::SAX::ExpatXS.  If you&#39;ve <strong>got<\/strong> a number of XML::SAX parsers<br \/>installed and you want to make sure XML::SAX::ExpatXS is used, do<br \/>this:<br \/><br \/>   $XML::SAX::ParserPackage = &#39;XML::SAX::ExpatXS&#39;;<br \/>","FULLPKGNAME":"p5-XML-Filter-ExceptionLocator-1.01p0","FULLPKGPATH":"textproc\/p5-XML-Filter-ExceptionLocator","HOMEPAGE":"https:\/\/metacpan.org\/release\/XML-Filter-ExceptionLocator"},{"COMMENT":"OpenGL game based on SNES classic Tetris Attack","COMMENT_MATCH":"OpenGL game based on SNES classic Tetris Attack","DESCRIPTION":"A free OpenGL game based on the Super Nintendo classic Tetris Attack.\nSlowly, your stack of blocks grows from the bottom, and you've got to\nmake sure it never reaches the top. Because, once it does, you lose!\nTo eliminate blocks from the stack, line up at least three of one color,\nhorizontally or vertically.\nTo add to the excitement, chunks of red garbage will fall from above. It\nis impossible to eliminate this garbage directly. However, if you\neliminate any blocks which are touching the garbage, the garbage will\nshatter into normal, run-of-the-mill blocks.\n","DESCR_MATCH":"A free OpenGL game based on the Super Nintendo classic Tetris Attack.<br \/>Slowly, your stack of blocks grows from the bottom, and you&#39;ve <strong>got<\/strong> to<br \/>make sure it never reaches the top. Because, once it does, you lose!<br \/>To eliminate blocks from the stack, line up at least three of one color,<br \/>horizontally or vertically.<br \/>To add to the excitement, chunks of red garbage will fall from above. It<br \/>is impossible to eliminate this garbage directly. However, if you<br \/>eliminate any blocks which are touching the garbage, the garbage will<br \/>shatter into normal, run-of-the-mill blocks.<br \/>","FULLPKGNAME":"crack-attack-1.1.14p17","FULLPKGPATH":"games\/crack-attack","HOMEPAGE":"http:\/\/www.nongnu.org\/crack-attack\/"},{"COMMENT":"X11 trippy color-cycling toy","COMMENT_MATCH":"X11 trippy color-cycling toy","DESCRIPTION":"Xtacy, a Graphics Hack for X11 windows\n--------------------------------------\n\n\"Wow! This is better than snorting caffeine!\"  --Neil Braun\n\nhttp:\/\/sidehack.gweep.net\/~jer\/xtacy.html\n\nXtacy is a graphics hack which I've been, well, hacking on, for 2 or 3\nyears now. It's been compiled on DECstations 3100, SGI running IRIX 5.3, \nand Linux boxen. I think someone got it running on a Sun once, but it \nhad problems with the circle draw function, so a couple of the modes \nlooked quite odd. Not that odd is bad. Just odd.\n\nSo what does it do? Xtacy displays bouncing shapes, rotating palettes, \na couple fractals, a kaleidoscope, and lots of more stuff.\n","DESCR_MATCH":"Xtacy, a Graphics Hack for X11 windows<br \/>--------------------------------------<br \/><br \/>&quot;Wow! This is better than snorting caffeine!&quot;  --Neil Braun<br \/><br \/>http:\/\/sidehack.gweep.net\/~jer\/xtacy.html<br \/><br \/>Xtacy is a graphics hack which I&#39;ve been, well, hacking on, for 2 or 3<br \/>years now. It&#39;s been compiled on DECstations 3100, SGI running IRIX 5.3, <br \/>and Linux boxen. I think someone <strong>got<\/strong> it running on a Sun once, but it <br \/>had problems with the circle draw function, so a couple of the modes <br \/>looked quite odd. Not that odd is bad. Just odd.<br \/><br \/>So what does it do? Xtacy displays bouncing shapes, rotating palettes, <br \/>a couple fractals, a kaleidoscope, and lots of more stuff.<br \/>","FULLPKGNAME":"xtacy-1.14p4","FULLPKGPATH":"x11\/xtacy","HOMEPAGE":"http:\/\/sidehack.gweep.net\/~jer\/xtacy.html"},{"COMMENT":"extremely flexible deep comparison","COMMENT_MATCH":"extremely flexible deep comparison","DESCRIPTION":"Test::Deep gives you very flexible ways to check that the result\nyou got is the result you were expecting. At its simplest it compares\ntwo structures by going through each level, ensuring that the values\nmatch, that arrays and hashes have the same elements and that\nreferences are blessed into the correct class. It also handles\ncircular data structures without getting caught in an infinite loop.\n\nWhere it becomes more interesting is in allowing you to do something\nbesides simple exact comparisons. With strings, the eq operator\nchecks that 2 strings are exactly equal but sometimes that's not\nwhat you want. When you don't know exactly what the string should\nbe but you do know some things about how it should look, eq is no\ngood and you must use pattern matching instead. Test::Deep provides\npattern matching for complex data structures\n","DESCR_MATCH":"Test::Deep gives you very flexible ways to check that the result<br \/>you <strong>got<\/strong> is the result you were expecting. At its simplest it compares<br \/>two structures by going through each level, ensuring that the values<br \/>match, that arrays and hashes have the same elements and that<br \/>references are blessed into the correct class. It also handles<br \/>circular data structures without getting caught in an infinite loop.<br \/><br \/>Where it becomes more interesting is in allowing you to do something<br \/>besides simple exact comparisons. With strings, the eq operator<br \/>checks that 2 strings are exactly equal but sometimes that&#39;s not<br \/>what you want. When you don&#39;t know exactly what the string should<br \/>be but you do know some things about how it should look, eq is no<br \/>good and you must use pattern matching instead. Test::Deep provides<br \/>pattern matching for complex data structures<br \/>","FULLPKGNAME":"p5-Test-Deep-1.205","FULLPKGPATH":"devel\/p5-Test-Deep","HOMEPAGE":"https:\/\/metacpan.org\/release\/Test-Deep"},{"COMMENT":"HTML\/XML parser that supports invalid markup","COMMENT_MATCH":"HTML\/XML parser that supports invalid markup","DESCRIPTION":"Beautiful Soup is a Python library designed for quick turnaround projects\nlike screen-scraping from web pages. Three features make it powerful:\n\nBeautiful Soup provides a few simple methods and Pythonic idioms for\nnavigating, searching, and modifying a parse tree: a toolkit for\ndissecting a document and extracting what you need. It doesn't take much\ncode to write an application.\n\nBeautiful Soup automatically converts incoming documents to Unicode and\noutgoing documents to UTF-8. You don't have to think about encodings,\nunless the document doesn't specify an encoding and Beautiful Soup can't\ndetect one. Then you just have to specify the original encoding.\n\nBeautiful Soup sits on top of popular Python parsers like lxml and\nhtml5lib, allowing you to try out different parsing strategies or trade\nspeed for flexibility.\n\nBeautiful Soup parses anything you give it, and does the tree traversal\nstuff for you. You can tell it \"Find all the links\", or \"Find all the\nlinks of class externalLink\", or \"Find all the links whose urls match\n\"foo.com\", or \"Find the table heading that's got bold text, then give me\nthat text.\"\n\nValuable data that was once locked up in poorly-designed websites is\nnow within your reach. Projects that would have taken hours take only\nminutes with Beautiful Soup.\n","DESCR_MATCH":"Beautiful Soup is a Python library designed for quick turnaround projects<br \/>like screen-scraping from web pages. Three features make it powerful:<br \/><br \/>Beautiful Soup provides a few simple methods and Pythonic idioms for<br \/>navigating, searching, and modifying a parse tree: a toolkit for<br \/>dissecting a document and extracting what you need. It doesn&#39;t take much<br \/>code to write an application.<br \/><br \/>Beautiful Soup automatically converts incoming documents to Unicode and<br \/>outgoing documents to UTF-8. You don&#39;t have to think about encodings,<br \/>unless the document doesn&#39;t specify an encoding and Beautiful Soup can&#39;t<br \/>detect one. Then you just have to specify the original encoding.<br \/><br \/>Beautiful Soup sits on top of popular Python parsers like lxml and<br \/>html5lib, allowing you to try out different parsing strategies or trade<br \/>speed for flexibility.<br \/><br \/>Beautiful Soup parses anything you give it, and does the tree traversal<br \/>stuff for you. You can tell it &quot;Find all the links&quot;, or &quot;Find all the<br \/>links of class externalLink&quot;, or &quot;Find all the links whose urls match<br \/>&quot;foo.com&quot;, or &quot;Find the table heading that&#39;s <strong>got<\/strong> bold text, then give me<br \/>that text.&quot;<br \/><br \/>Valuable data that was once locked up in poorly-designed websites is<br \/>now within your reach. Projects that would have taken hours take only<br \/>minutes with Beautiful Soup.<br \/>","FULLPKGNAME":"py3-beautifulsoup4-4.13.4","FULLPKGPATH":"www\/py-beautifulsoup4","HOMEPAGE":"https:\/\/www.crummy.com\/software\/BeautifulSoup\/"}]