I see more and more commands like this:
$ pip install \"splinter[django]\"
What do these square brackets do?
The syntax that you are using is:
pip install "project[extra]"
In your case, you are installing the splinter package which has the added support for django. The square brackets ([]) are not specific syntax, just convention. Really, you are installing the package named: "splinter[django]".
An explanation from @chetner:
The command
pip install splinter djangowould install two packages namedsplinteranddjango.splinter[django], on the other hand, installs a variant of thesplinterpackage which contains support fordjango. Note that it has nothing to do with thedjangopackage itself, but is just a string defined by thesplinterpackage for a particular feature set that gets enabled.