1{ fetchPypi, buildPythonPackage, lib
2, requests, beautifulsoup4, six, lxml
3, pytestrunner, requests-mock, pytestcov, pytest
4}:
5
6
7buildPythonPackage rec {
8 name = "${pname}-${version}";
9 pname = "MechanicalSoup";
10 version = "0.9.0.post4";
11
12 src = fetchPypi {
13 inherit pname version;
14 sha256 = "ce8f822afbc9bef1499be417e8d5deecd0cd32606420165700e89477955f03ab";
15 };
16
17 checkInputs = [ pytest pytestrunner requests-mock pytestcov ];
18
19 propagatedBuildInputs = [ lxml requests beautifulsoup4 six ];
20
21 # Requires network
22 doCheck = false;
23
24 postPatch = ''
25 # Is in setup_requires but not used in setup.py...
26 substituteInPlace setup.py --replace "'pytest-runner'" ""
27 '';
28
29 meta = with lib; {
30 description = "A Python library for automating interaction with websites";
31 homepage = https://github.com/hickford/MechanicalSoup;
32 license = licenses.mit;
33 maintainers = [ maintainers.jgillich ];
34 };
35}