Skip to content

Instantly share code, notes, and snippets.

<?php
# fetch and cache artist id by doing a search
$spotresults = @json_decode(shell_exec('curl "https://api.spotify.com/v1/search?q='.$artistNameFromScrape.'&type=artist" -H "Accept: application/json"'));
$artistmeta = json_encode($spotresults->artists->items[0]);
$artistid = (string)$spotresults->artists->items[0]->id;
$artistname = (string)$spotresults->artists->items[0]->name;
$result = $db->prepare("INSERT INTO artists(artist, url, parent_artist, json) VALUES(?,?,?,?)");
$result->execute(array($artistname, $val, 0, $artistmeta));
$insert_id = $db->lastInsertId();
@fjallstrom
fjallstrom / php.php
Last active February 25, 2017 21:36
fetch sxsw artists 2017
<?php
$artist_html = shell_exec('curl "http://schedule.sxsw.com/2017/artists"');
preg_match_all('!<h4><a href="(.*?)">(.*?)</a></h4>!', $artist_html, $matches);
foreach($matches[1] as $i=>$val){
print_r($matches[2][$i]." : ".$val."\n");
}
<?php
# hello
# this is pure crap, don't even think about using it
# it doesn't filter input vars or contain ANY error handling at all
# i wrote this while putting a kid to bed in, january 2016
# i repeat: do not use this script
# i am peder@earthpeople.se, a ceo - not a real developer
# prerequisites
# you need an account at mathem
<html><head>
<script src="https://code.jquery.com/jquery-3.1.1.min.js" integrity="sha256-hVVnYaiADRTO2PzUGmuLJr8BLUSjGIZsDYGmIJLv2b8=" crossorigin="anonymous"></script>
<script>
function checkApi(){
// CRAPPY JQUERY SCRIPT BECAUSE I AM NOT A DEVELOPER (anymore)
@fjallstrom
fjallstrom / gist:4f238b15a4d54187f742
Last active August 3, 2016 20:24
slacklastfmthingie
<?php
date_default_timezone_set("Europe/Stockholm");
require 'vendor/autoload.php';
use GuzzleHttp\Pool;
use GuzzleHttp\Client;
$client = new Client();
<?php
if(stristr($_SERVER['HTTP_USER_AGENT'], ' MSIE 9')){
$msie_post = file_get_contents("php://input");
parse_str($msie_post, $_POST);
}
<?php
$lockfile = '/tmp/cron_mylongrunningstuff.lock';
if(file_exists($lockfile)){
echo 'Hey, another process is already running, lockfile: '.$lockfile."\n";
exit(0);
}else{
@fjallstrom
fjallstrom / gist:5402355
Last active December 16, 2015 07:58
simple watchfolder daemon. using mysql to tag files as processed, which isn't perfect. can be changed to redis, mongo or memcache easily.
#!/usr/bin/env python
import os
import sys
import datetime
import time
import logging
try:
import MySQLdb as db
#!/usr/bin/env python
import pika
import time
credentials = pika.credentials.PlainCredentials('guest', 'guest')
parameters = pika.ConnectionParameters(
host="127.0.0.1",
credentials=credentials)
connection = pika.BlockingConnection(parameters)
channel = connection.channel()
@fjallstrom
fjallstrom / gist:2147581
Created March 21, 2012 14:38
fetch likes from fb
# hämta ut en array med dina likeade urlar
if($urls){
foreach($urls as $url){
# fetch stats from fb
$fbdata = @json_decode($this->curl->simple_get('http://api.facebook.com/restserver.php?method=links.getStats&urls='.$url.'&format=json'));
$likes = $fbdata ? $fbdata[0]->total_count : 0;
# uppdatera denna marker med hur många likes den har i databasen. nya värdet på likes finns i: $likes