Comments (3)
I'm also on fence; let's say -0 to add such shortcut, as it doesn't add much, and it is not composable.
To make processing code shorter and more composable I'd try to explore something like pytoolz currying instead.
from parsel.
I kinda like it, however it doesn't seem to be that useful, as well as map
being unpythonic (list comprehensions are better! :))
sel.xpath("//@data-p13n-asin-metadata").map([json.loads, lambda d: d.get('asin'))
# vs
[json.loads(v).get('asin') for v in sel.xpath("//@data-p13n-asin-metadata").extract()]
As the comparison shows map doesn't really add much. Sure it might look a bit more tidy but list comprehension are more straigh-forward and most importantly more explicit.
Also you can use dict, set and generator comprehensions!
So I feel on the edge - would be nice but seems awfully unnecessary and inferrior to comprehensions.
from parsel.
I'm also -0 on this one. I prefer comprehension myself.
from parsel.
Related Issues (20)
- Scrapy lxml xpath parser not correctly parse HOT 4
- Adding a `strip` kwarg to `get()` and `getall()` HOT 1
- Dropping support of python 3.6 HOT 2
- New version release HOT 2
- Fix mypy issues HOT 2
- Modernize SelectorList-related code
- Improve typing in parsel.selector._ctgroup HOT 2
- There seems to be an error in the parsing of the xpath and css HOT 2
- UserWarning message after chances in commit 3b3ec90 HOT 1
- Scrapy/Parsel type of response issue. HOT 13
- Import error HOT 2
- Unexpected css parsing caused by the default prefix : `descendant-or-self::` HOT 1
- Constructing selector with text argument raises if a numeric string is passed HOT 1
- Why attrib() is the only one method that doesn't contain any checks? HOT 1
- Cannot work well with gevent HOT 1
- Drop pytest-runner usage
- Parsel import causes crash HOT 3
- remove_namespaces asserts on json TextResponse HOT 7
- XPath query is buggy HOT 3
- SelectorList.drop() removing elements doesn't work as expected HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from parsel.