Skip to content

Instantly share code, notes, and snippets.

Avatar

Emre Aladağ aladagemre

View GitHub Profile
@aladagemre
aladagemre / n11cat.py
Created Dec 30, 2020
N11 kategori listesini çeken bir script
View n11cat.py
import bs4
import csv
import requests
r = requests.get("https://www.n11.com/site-haritasi")
soup = bs4.BeautifulSoup(r.text, features="html.parser")
with open("kategoriler.csv", "w") as csvfile:
writer = csv.writer(csvfile, delimiter=';', quotechar='"')
mcs = [(a.text, a.get('href')) for a in soup.find_all("a", class_="main-category")]
@aladagemre
aladagemre / polen_crawler.py
Created Jul 12, 2020
Madrid Polen Crawler
View polen_crawler.py
"""
This is a script for parsing polen levels in Madrid, Spain.
It used to work in 2019 but you may need to make fixes to make it work in the following years.
"""
import re
import locale
import time
import logging
import requests
View tweetfetcher.go
package controllers
import (
"github.com/revel/revel"
"fmt"
"time"
"gopkg.in/mgo.v2/bson"
"net/url"
"github.com/ChimeraCoder/anaconda"
"strconv"
@aladagemre
aladagemre / pandas_dataframe_intersection.py
Created Dec 6, 2016
Check whether a pandas dataframe contains rows with a value that exists in another dataframe.
View pandas_dataframe_intersection.py
# We have dataframe A with column name
# We have dataframe B with column name
# I want to see rows in A with name Y such that there exists rows in B with name Y.
# It's like set intersection.
intersected = reduce(lambda x, y: x | (A['name'] == y), [False] + list(B['name']))
intersection = A[intersected]
# other alternatives
intersection = pd.merge(A, B, how='inner', on=['name'])
intersection.dropna(inplace=True)
@aladagemre
aladagemre / bordro.py
Created May 2, 2016
Çok basit ve özensizce hazırlanmış bir bordro hesaplama scripti. Aylık brüt maaşı girin, aylık net maaş ve işveren maliyetini çıkarsın.
View bordro.py
#encoding: utf-8
import math
ay = 1
BM = {}
EK = {}
AGI = {}
SM = {}
@aladagemre
aladagemre / build_after_dropbox_sync.sh
Created Jan 20, 2016
This script looks for changes in Dropbox folder. Upon any change, waits for the status to be Up to date. When it's fully synced, starts a build process (/app/build.bin).
View build_after_dropbox_sync.sh
#!/bin/sh
uptodate () {
# returns 1 if up to date, 0 otherwise.
python /root/dropbox.py status | grep "Up to date" |wc -l
}
build_after_uptodate() {
while [ "$(uptodate)" != "1" ]; do
sleep 1
done
@aladagemre
aladagemre / lib_igraph.cr
Created Dec 9, 2015
igraph c binding code
View lib_igraph.cr
@[Link("igraph")]
@[Link("glpk")]
@[Link("stdarg")]
@[Link("c++")]
lib IGraph
VS_ALL = 0
VS_ADJ = 1
VS_NONE = 2
VS_1 = 3
VS_VECTORPTR = 4
@aladagemre
aladagemre / mp4_total_duration.py
Created Aug 24, 2015
Recursive mp4 duration counter
View mp4_total_duration.py
"""
When you have lots of mp4 files in a folder recursively (lots of subfolders and mp4s residing inside),
You can use this script to measure total duration of all mp4 files.
Useful in estimating the total course duration.
Run this script in folder where you want to start counting from.
"""
import subprocess
@aladagemre
aladagemre / tdk-esanlam.py
Created Jun 24, 2015
TDK'dan bir küme kelimenin eş anlamlılarını çeken betik
View tdk-esanlam.py
# coding: utf-8
# TDK sözlüğünden eş anlamlıları çeker.
# words.txt dosyasında her satırda bir kelime olacak şekilde girdi listelenir.
# meanings.txt dosyasına her kelime için eş anlamlılarını bulur ve satır satır yazar.
import requests
import codecs
from bs4 import BeautifulSoup
@aladagemre
aladagemre / jekyll2pelican.py
Created Feb 10, 2015
Jekyll to Pelican convertor. Only fixes categories, tags list to comma separated tags and single category
View jekyll2pelican.py
# encoding: utf-8
import os
filenames = filter(lambda x: x.endswith(".md"), os.listdir("."))
def parse(filename):
print filename
lines = open(filename).read().split("\n")
tags_i = None
last_tag_i = None
tags = []