Uploading Files with Curl
curl -i -F name=test -F filedata=@localfile.jpg http://example.org/upload
Courtesy of http://ariejan.net/2010/06/07/uploading-files-with-curl/
Grab a Twitter Status without the Twitter API
Quick and dirty way to grab the users status messages without having to go through the twitter api (not having to authenticate that is). You can grab the RSS feed and indicate the number of statuses returned with the count param. I wrote this function for my blog in PHP. It uses the curl extension so if it’s not installed type
apt-get install php5-curl
Otherwise you’ll have to use the fsockopen function. Then it’s just a matter of parsing the XML and getting at what data you want. I just want one status so I’m accessing the element directly, rather than looping over the returned data set.
<php
function latest_twitter_status_message(){
// grab the rss feed link from some user, like me and indicate the count in the url
$host = "http://twitter.com/statuses/user_timeline/11036982.rss?count=1";
// using curl
$ch = curl_init($host);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, 0);
$data = curl_exec($ch);
curl_close($ch);
$doc = new SimpleXmlElement($data, LIBXML_NOCDATA);
return "{$doc->channel->item[0]->description}";
}
Updating Your Twitter Status with cURL and a Bash Function
I’m usually at the command line so I wrote a little a bash function so that i can type
tweet this is really neat but kind of pointless
and it will update my twitter status! some characters trip it up but in general it’s useful for most of my tweets. The tweet function just spits out the arguments passed to it for the status parameter for the API call to twitter.
Add the following to the .bash_profile file and reload the terminal (don’t forget to add your email and pwd where appropriate).
tweet() {
curl -u your_twitter_email_addr:your_twitter_passwd -d status="$*" http://twitter.com/statuses/update.xml
}
*** Twitter still uses http basic authentication for their API. However, they are moving away from it in favor of oAuth. So I’m not sure how long this fun will last :{


