Вы создаете пустой кортеж в качестве переменной a
и затем пытаетесь использовать этот пустой кортеж в качестве параметра запроса, который выдаст ошибку.
Сказав это;Я только что запустил ваш код (в python3 с небольшими изменениями), и он возвращает следующее
>>> import requests
>>>
>>> session = requests.session()
>>> params={}
>>> a=()
>>> params.update({'id':a})
>>> httpresult = session.get('http://www.baidu.com/',data=params)
>>> print(httpresult.status_code)
200
>>> httpresult = session.get('http://www.baidu.com/')
>>> print(httpresult.status_code)
200
Так что нет ошибки 400.
Кроме того, что вы используете неправильные параметры запроса для baidu, естьбез параметра id.
Также возможно, что baidu определяет ваши запросы как бот и блокирует ваши запросы на ограниченное время.