News
2.0.0 (2022-12-28)
- Breaking change: inputs starting with
"http://"
or "https://"
like
PyQuery("http://example.com")
will no longer fetch the contents of the URL.
Users desiring the old behavior should switch to PyQuery(url="http://example.com")
.
- Add nextUntil method
.remove()
no longer inserts a space in place of the removed element
- Fix escaping of top-level element text in
.html()
output
- Support (and require) cssselect 1.2+
- Drop support for python 3.5/3.6
1.4.3 (2020-11-21)
- No longer use a universal wheel
1.4.2 (2020-11-21)
- Fix exception raised when calling PyQuery(“<textarea></textarea>”).text()
- python2 is no longer supported
1.4.1 (2019-10-26)
- This is the latest release with py2 support
- Remove py33, py34 support
- web scraping improvements: default timeout and session support
- Add API methods to serialize form-related elements according to spec
- Include HTML markup when querying textarea text/value
1.4.0 (2018-01-11)
- Refactoring of .text() to match firefox behavior.
1.3.0 (2017-10-21)
- Remove some unmaintained modules:
pyquery.ajax
and pyquery.rules
- Code cleanup. No longer use ugly hacks required by python2.6/python3.2.
- Run tests with python3.6 on CI
- Add a
method
argument to .outer_html()
1.2.17 (2016-10-14)
PyQuery('<input value="">').val()
is ''
PyQuery('<input>').val()
is ''
1.2.16 (2016-10-14)
.attr('value', '')
no longer removes the value
attribute
<input type="checkbox">
without value="..."
have a .val()
of
'on'
<input type="radio">
without value="..."
have a .val()
of
'on'
<select>
without <option selected>
have the value of their first
<option>
(or None
if there are no options)
1.2.15 (2016-10-11)
- .val() should never raise
- drop py26 support
- improve .extend() by returning self
1.2.14 (2016-10-10)
- fix val() for <textarea> and <select>, to match jQuery behavior
1.2.13 (2016-04-12)
- Note explicit support for Python 3.5
1.2.12 (2016-04-12)
- make_links_absolute now take care of whitespaces
- added pseudo selector :has()
- add cookies arguments as allowed arguments for requests
1.2.11 (2016-02-02)
- Preserve namespaces attribute on PyQuery copies.
- Do not raise an error when the http response code is 2XX
1.2.10 (2016-01-05)
- Fixed #118: implemented usage
lxml.etree.tostring
within outer_html
method
- Fixed #117: Raise HTTP Error if HTTP status code is not equal to 200
- Fixed #112: make_links_absolute does not apply to form actions
- Fixed #98: contains act like jQuery
1.2.9 (2014-08-22)
- Support for keyword arguments in PyQuery custom functions
- Fixed #78: items must take care or the parent
- Fixed #65 PyQuery.make_links_absolute() no longer creates ‘href’ attribute
when it isn’t there
- Fixed #19.
is_()
was broken.
- Fixed #9.
.replaceWith(PyQuery element)
raises error
- Remove official python3.2 support (mostly because of 3rd party semi-deps)
1.2.8 (2013-12-21)
- Fixed #22: Open by filename fails when file contains invalid xml
- Bug fix in .remove_class()
1.2.7 (2013-12-21)
- Use pep8 name for methods but keep an alias for camel case method.
Eg: remove_attr and removeAttr works
Fix #57
- .text() now return an empty string instead of None if there is no text node.
Fix #45
- Fixed #23: removeClass adds class attribute to elements which previously
lacked one
1.2.6 (2013-10-11)
- README_fixt.py was not include in the release. Fix #54.
1.2.4
- Moved to github. So a few files are renamed from .txt to .rst
- Added .xhtml_to_html() and .remove_namespaces()
- Use requests to fetch urls (if available)
- Use restkit’s proxy instead of Paste (which will die with py3)
- Allow to open https urls
- python2.5 is no longer supported (may work, but tests are broken)
1.2.3
- Allow to pass this in .filter() callback
- Add .contents() .items()
- Add tox.ini
- Bug fixes: fix #35 #55 #64 #66
1.2.2
- Fix cssselectpatch to match the newer implementation of cssselect. Fixes issue #62, #52 and #59 (Haoyu Bai)
- Fix issue #37 (Caleb Burns)
1.2.1
- Allow to use a custom css translator.
- Fix issue 44: case problem with xml documents
1.2
- PyQuery now uses cssselect. See issue 43.
- Fix issue 40: forward .html() extra arguments to
lxml.etree.tostring
1.1.1
- Minor release. Include test file so you can run tests from the tarball.
1.1
- fix issues 30, 31, 32 - py3 improvements / webob 1.2+ support
0.7
- Python 3 compatible
- Add __unicode__ method
- Add root and encoding attribute
- fix issues 19, 20, 22, 23
0.6.1
- Move README.txt at package root
- Add CHANGES.txt and add it to long_description
0.6
- Added PyQuery.outerHtml
- Added PyQuery.fn
- Added PyQuery.map
- Change PyQuery.each behavior to reflect jQuery api