xq
pup
Our great sponsors
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
xq
-
Build an Open Source Project: Behind the Scenes
Some time ago, I started a project called "xq", which is a command-line XML and HTML beautifier and content extractor written in Go. Using this project as an example, I want to show what I did to make it a little bit more discoverable and usable by other people.
- November 15-19, 2022 FLiP Stack Weekly
- Show HN: Xq – command-line XML and HTML beautifier and content extractor
-
xq: command-line XML beautifier and content extractor (written in Go)
Thank you for highlighting the issue! I'll take a look. See https://github.com/sibprogrammer/xq/issues/1 for the reference.
pup
-
script to download some notes
And lnk=$(curl -s https://www.selfstudys.com$url |grep "PDFFlip" | cut -d '"' -f 6) to lnk=$(curl -s https://www.selfstudys.com$url | pup "div#PDFF attr{source}" ) here pup will print content of source attribute from div tag with id PDFF i dont know that much about html & css so this is what i came up with. but i am sure you can also select class & make list of suburls from them. check out the video from bugswriter on pup or read docs from git hub for more info github link: https://github.com/ericchiang/pup
-
What monitoring tool do you use or recommend?
jq is pretty amazing. If you are comfortable with its jquery-like CSS selector syntax, then I should also mention a couple similar cli utilities that apply it to HTML: htmlp and pup.
-
Creating a data scraper as a beginner?
Regex is not a great tool for parsing web pages. Open up a browser dev tools window and select a bit of the page. Right click > copy... XPath expression or CSS selector. A proper web scraping tool will accept either of those. No muss, no fuss. You can even use simple command line tools: xpath or pup
- December 5, 2022: FLiP Stack Weekly
-
Show HN: A tool like jq, but for parsing HTML
This is HTML to JSON, written in Rust, and there's also pup[1] which I found out about just the other day on HN[2] which uses a very similar syntax (CSS selectors) but outputs HTML and is written in Go.
I can see room for both though it would interesting to have a more detailed comparison to go on (e.g. types of HTML, speed etc).
[1] https://github.com/ericchiang/pup
[2] https://news.ycombinator.com/item?id=33805732
- Pup: Parsing HTML at the command line
-
pup: Parsing HTML at the Command Line
It looks like the project became inactive for a bit and there are alternatives such as htmlq, etc. https://github.com/ericchiang/pup/issues/150
-
Converting field before delimiter to uppercase and how to replace with multiple newlines
Another tool worth mentioning is pup - it can produce JSON output which means you can pipe it to jq
What are some alternatives?
go-xmldom - XML DOM processing for Golang, supports xpath query
htmlq - Like jq, but for HTML.
xpath - XPath package for Golang, supports HTML, XML, JSON document query.
xidel - Command line tool to download and extract data from HTML/XML pages or JSON-APIs, using CSS, XPath 3.0, XQuery 3.0, JSONiq or pattern matching. It can also create new or transformed XML/HTML/JSON documents.
pulsar-io-cloud-storage - Cloud Storage Connector integrates Apache Pulsar with cloud storage.
gron - Make JSON greppable!
jsonquery - JSON xpath query for Go. Golang XPath query for JSON query.
yq - Command-line YAML, XML, TOML processor - jq wrapper for YAML/XML/TOML documents
wa-tunnel - Tunneling Internet traffic over Whatsapp
cascadia - Go cascadia package command line CSS selector
spring-pulsar - Spring Friendly Abstractions for Apache Pulsar
ddgr - :duck: DuckDuckGo from the terminal