[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 6/18] gnu: Add python-beautifulsoup4
From: |
Leo Famulari |
Subject: |
Re: [PATCH 6/18] gnu: Add python-beautifulsoup4 |
Date: |
Mon, 15 Feb 2016 20:45:48 -0500 |
User-agent: |
Mutt/1.5.24 (2015-08-30) |
On Mon, Feb 15, 2016 at 03:28:03PM -0800, Christopher Allan Webber wrote:
> From 12fea50a946441277e38cc6e7ef266c08738193e Mon Sep 17 00:00:00 2001
> From: Christopher Allan Webber <address@hidden>
> Date: Sat, 13 Feb 2016 18:35:57 -0800
> Subject: [PATCH 06/18] gnu: Add python-beautifulsoup4
>
> * gnu/packages/python.scm (python-beautifulsoup4, python2-beautifulsoup4):
> New variables.
I actually have a patch for this in one of my WIP branches, too :)
> ---
> gnu/packages/python.scm | 33 +++++++++++++++++++++++++++++++++
> 1 file changed, 33 insertions(+)
>
> diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
> index 3ef552d..d7498dd 100644
> --- a/gnu/packages/python.scm
> +++ b/gnu/packages/python.scm
> @@ -4573,6 +4573,39 @@ libxml2 and libxslt.")
> (define-public python2-lxml
> (package-with-python2 python-lxml))
>
> +;; beautifulsoup4 has a totally different namespace than 3.x,
> +;; and pypi seems to put it under its own name, so I guess we should too
> +(define-public python-beautifulsoup4
> + (package
> + (name "python-beautifulsoup4")
> + (version "4.4.1")
> + (source
> + (origin
> + (method url-fetch)
> + (uri (pypi-uri "beautifulsoup4" version))
> + (sha256
> + (base32
> + "1d36lc4pfkvl74fmzdib2nqnvknm0jddgf2n9yd7im150qyh3m47"))))
> + (build-system python-build-system)
> + (inputs
> + `(("python-lxml" ,python-lxml)
> + ("python-html5lib" ,python-html5lib)))
I didn't find these necessary for the build process and test suite. Are
you sure they aren't supposed to be provided by the application that
uses beautifulsoup4?
> + (home-page
> + "http://www.crummy.com/software/BeautifulSoup/bs4/")
> + (synopsis
> + "Python screen-scraping library")
> + (description
> + "HTML/XML parser for quick-turnaround applications like screen-scraping.
> +Can parse even extremely broken HTML.")
How about this:
"Beautiful Soup is a Python library designed for rapidly setting up
screen-scraping projects. It offers Pythonic idioms for navigating,
searching, and modifying a parse tree, providing a toolkit for
dissecting a document and extracting what you need. It automatically
converts incoming documents to Unicode and outgoing documents to UTF-8."
> + (license bsd-3)
It uses the Expat license, and has some code from html5lib, which is
also Expat.
> + (properties `((python2-variant . ,(delay python2-beautifulsoup4))))))
> +
> +(define-public python2-beautifulsoup4
> + (package
> + (inherit (package-with-python2
> + (strip-python2-variant python-beautifulsoup4)))
> + (inputs `(("python2-setuptools" ,python2-setuptools)))))
> +
> (define-public python2-pil
> (package
> (name "python2-pil")
> --
> 2.6.3
>
>