python/BeautifulSoup4: Fix python3 build.

Signed-off-by: Dave Woodfall <dave@slackbuilds.org>

Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
This commit is contained in:
Isaac Yu 2021-02-12 20:04:12 +00:00 committed by Willy Sudiarto Raharjo
parent 2fe5e8fa3b
commit d5e006947c
No known key found for this signature in database
GPG Key ID: 3F617144D7238786
3 changed files with 14 additions and 33 deletions

View File

@ -3,7 +3,7 @@
# Slackware build script for BeautifulSoup4
# Copyright 2014-2018 Dimitris Zlatanidis Orestiada, Greece
# Copyright 2020 Isaac Yu <isaacyu1@isaacyu1.com>
# Copyright 2020-2021 Isaac Yu <isaacyu1@isaacyu1.com>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@ -25,7 +25,7 @@
PRGNAM=BeautifulSoup4
VERSION=${VERSION:-4.9.3}
BUILD=${BUILD:-1}
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
SRCNAM=beautifulsoup4
@ -72,12 +72,17 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
# Python 2 support (requires python-soupsieve)
if $(python2 -c 'import soupsieve' 2>/dev/null); then
python setup.py install --root=$PKG
fi
# Python 3 support (requires python3-soupsieve)
if $(python3 -c 'import soupsieve' 2>/dev/null); then
# shaypal5 provided an example package check:
# https://gist.github.com/shaypal5/d505af9953cd86f59c750fa600ee4ba6
if $(python3 -c 'import pkgutil; exit(not pkgutil.find_loader("soupsieve"))'); then
# Prepare another source tarball before building for Python 3
cd $TMP
rm -rf $SRCNAM-$VERSION
tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
@ -88,6 +93,8 @@ if $(python3 -c 'import soupsieve' 2>/dev/null); then
-o -perm 511 \) -exec chmod 755 {} \; -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
# Build for Python 3
sed -i "s/-rfI/-rf/" convert-py3k
sh convert-py3k
python3 setup.py install --root=$PKG

View File

@ -1,32 +1,6 @@
Beautiful Soup is a Python HTML/XML parser designed for quick
turnaround projects like screen-scraping. Three features make it
powerful:
turnaround projects like screen-scraping. It commonly saves
programmers hours or days of work.
1. Beautiful Soup won't choke if you give it bad markup. It yields a
parse tree that makes approximately as much sense as your original
document. This is usually good enough to collect the data you need
and run away.
2. Beautiful Soup provides a few simple methods and Pythonic idioms for
navigating, searching, and modifying a parse tree: a toolkit for
dissecting a document and extracting what you need. You don't have to
create a custom parser for each application.
3. Beautiful Soup automatically converts incoming documents to Unicode
and outgoing documents to UTF-8. You don't have to think about
encodings, unless the document doesn't specify an encoding and
Beautiful Soup can't autodetect one. Then you just have to specify
the original encoding.
Beautiful Soup parses anything you give it, and does the tree traversal
stuff for you. You can tell it "Find all the links", or "Find all the
links of class externalLink", or "Find all the links whose urls match
"foo.com", or "Find the table heading that's got bold text, then give
me that text."
Valuable data that was once locked up in poorly-designed websites is
now within your reach. Projects that would have taken hours take only
minutes with Beautiful Soup.
If python3-soupsieve is installed, then this will also build for
If python3-soupsieve is installed, then this will also build for
Python 3.

View File

@ -9,7 +9,7 @@
BeautifulSoup4: BeautifulSoup4 (Python HTML/XML parser)
BeautifulSoup4:
BeautifulSoup4: BeautifulSoup is a Python HTML/XML parser designed for quick
BeautifulSoup4: turnaround projects like screen-scraping
BeautifulSoup4: turnaround projects like screen-scraping.
BeautifulSoup4:
BeautifulSoup4: Homepage: http://www.crummy.com/software/BeautifulSoup/
BeautifulSoup4: