1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 poetry-core,
6 numpy,
7 pandas,
8 pydantic,
9 regex,
10 requests,
11 markdownify,
12 tls-client,
13 beautifulsoup4,
14}:
15
16buildPythonPackage rec {
17 pname = "jobspy";
18 version = "1.1.79";
19 pyproject = true;
20
21 src = fetchFromGitHub {
22 owner = "Bunsly";
23 repo = "JobSpy";
24 tag = "v${version}";
25 hash = "sha256-09UVZUcBNyKLSbqHOctct7dRJhmRdS6wb5hjMI3YWdg=";
26 };
27
28 pythonRelaxDeps = [
29 "numpy"
30 "markdownify"
31 ];
32
33 build-system = [ poetry-core ];
34
35 dependencies = [
36 numpy
37 pandas
38 pydantic
39 regex
40 requests
41 markdownify
42 tls-client
43 beautifulsoup4
44 ];
45
46 pythonImportsCheck = [ "jobspy" ];
47
48 # no package tests because they all require networking/polling
49
50 meta = {
51 description = "Jobs scraper library for job sites";
52 downloadPage = "https://github.com/Bunsly/JobSpy";
53 homepage = "https://github.com/Bunsly/JobSpy";
54 changelog = "https://github.com/Bunsly/JobSpy/releases/tag/${src.tag}";
55 license = with lib.licenses; [ mit ];
56 maintainers = with lib.maintainers; [ ethancedwards8 ];
57 };
58}