Skip to content

Instantly share code, notes, and snippets.

View stachjankowski's full-sized avatar

Stanisław Jankowski stachjankowski

View GitHub Profile
@stachjankowski
stachjankowski / selenium_extractor.py
Last active July 5, 2023 02:35
Get the xpath of an element. This is useful for creating selectors for selenium.
from typing import List
from selenium.common import InvalidSelectorException
from selenium.webdriver.common.by import By
from selenium.webdriver.remote.webelement import WebElement
def get_xpath_for_selenium_element(element: WebElement, use_index: bool = True,
attributes: List[str] = ['id']) -> str:
"""Get the xpath of an element. This is useful for creating selectors for selenium.
@stachjankowski
stachjankowski / md940-to-dataframe.py
Last active February 2, 2021 18:48
Creating pandas.DataFrame from md940 files
import glob
import itertools
import mt940
import pandas
files = glob.glob('*.sta')
transactions = itertools.chain(*map(list, map(mt940.parse, files)))
transactions = pandas.DataFrame.from_dict(map(lambda t: dict(amount=t.data.pop('amount').amount, **t.data), transactions))
@stachjankowski
stachjankowski / ListFiles.scala
Created March 26, 2020 16:30
Finds all the files matching a specified pattern in Spark.
import org.apache.hadoop.fs.{FileStatus, Path}
import org.apache.spark.sql.SparkSession
object ListFiles extends App {
val spark = SparkSession.builder.config("spark.master", "local[1]").getOrCreate()
val path = new Path("/data/wiki-dumps/dumps/*wiki-*-pages-articles-multistream.xml*")
val fileSystem = path.getFileSystem(spark.sparkContext.hadoopConfiguration)
val files: List[FileStatus] = fileSystem.globStatus(path).toList
@stachjankowski
stachjankowski / dump-db-with-progressbar.sh
Last active May 11, 2021 13:05
PostgreSQL dump with pv inception
pg_dump dbname | pv --rate --progress --eta --size $(pg_dump dbname | pv | wc --bytes) | psql -h remote.server dbname
@stachjankowski
stachjankowski / JasperReportQueries.scala
Last active September 29, 2015 21:34
Extracting SQL from .jasper (JasperReport).
import java.io.{FileInputStream, ObjectInputStream, File}
import net.sf.jasperreports.engine.JasperReport
object JasperReportQueries {
class JasperReportQueriesExtractor(file: File) {
val report = new ObjectInputStream(new FileInputStream(file))
.readObject.asInstanceOf[JasperReport]
def getTextQueries = getQueries map(_.getText)
def getQueries = getMainQuery.toList ++ getDataSetQueries
#EXTM3U
#EXTINF: 1, AntyRadio
http://dcs-188-64-84-28.atmcdn.pl/streams/o2/Eurozet/live/antyradio.livx
#EXTINF: 2, Radio PIN
http://stream4.nadaje.com/radiopin
#EXTINF: 3, Radio Paradise
http://stream-tx3.radioparadise.com/mp3-192