Django に curl でアクセスする

Django に curl でログインして別なページの内容を取得する必要があった

http://stackoverflow.com/questions/21306515/how-to-curl-an-authenticated-django-app

ここを参考にしたけど全く動かん・・・
試行錯誤した結果・・・

#!/bin/bash

SERVER=http://192.168.12.34:8000
LOGIN_URL=${SERVER}/login/
TARGET_URL=${SERVER}/secure/data
YOUR_USER='user'
YOUR_PASS='pass'

COOKIES=/tmp/cookies_${USER}.txt
CURL_BIN="curl -s -c ${COOKIES} -b ${COOKIES} -e ${LOGIN_URL}"

DJANGO_TOKEN_MIDDLE=$($CURL_BIN $LOGIN_URL | grep csrfmiddlewaretoken | sed -e "s/.*value='//" -e "s/'.*//")

${CURL_BIN} \
    --data "csrfmiddlewaretoken=${DJANGO_TOKEN_MIDDLE}&username=${YOUR_USER}&password=${YOUR_PASS}&next=/" \
    ${LOGIN_URL}

${CURL_BIN} \
    ${TARGET_URL}

rm $COOKIES

最終的に http://192.168.12.34:8000/secure/data の内容を取得できる。
Django 1.10.6 で確認済み。

CentOS で yum update がエラーになる

CentOS 5.2 を入れて、

yum -y update

と入力すると・・・

[Errno -1] Metadata file does not match checksum
Trying other mirror.

というエラーが大量に出て、結局アップデート出来なかった。
 
原因不明で、ググッたけど良く分からず。
yum のオプションを見てみると、clear というオプションが使えるらしい。
そこで

yum clear all

とすると、あら不思議。
yum でアップデートが出来るようになった。