雪球数据爬取上传数据库

import json
import requests
import pymysql
from mysql_test import mysql_conn

# 因为不能访问, 所以我们加个头试试
headers = {
    #'Accept': '*/*',
    #'Accept-Encoding': 'gzip, deflate, br',
    #'Accept-Language': 'zh-CN,zh;q=0.9,en;q=0.8',
    #'Connection': 'keep-alive',
    'Cookie': 'aliyungf_tc=AQAAALoQF3p02gsAUhVFebQ3uBBNZn+H; xq_a_token=584d0cf8d5a5a9809761f2244d8d272bac729ed4; xq_a_token.sig=x0gT9jm6qnwd-ddLu66T3A8KiVA; xq_r_token=98f278457fc4e1e5eb0846e36a7296e642b8138a; xq_r_token.sig=2Uxv_DgYTcCjz7qx4j570JpNHIs; _ga=GA1.2.516718356.1534295265; _gid=GA1.2.1050085592.1534295265; u=301534295266356; device_id=f5c21e143ce8060c74a2de7cbcddf0b8; Hm_lvt_1db88642e346389874251b5a1eded6e3=1534295265,1534295722; Hm_lpvt_1db88642e346389874251b5a1eded6e3=1534295722',
    #'Host': 'xueqiu.com',
    #'Referer': 'https://xueqiu.com/',
    'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36',
    #'X-Requested-With': 'XMLHttpRequest',
    #'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36'
}

# urllib 的相关操作如下
url = 'https://xueqiu.com/v4/statuses/public_timeline_by_category.json?since_id=-1&max_id=-1&count=10&category=111'
#
# # request.Request
# req = request.Request(url, headers=headers)
#
# # 通过request 请求我们的雪球
# response = request.urlopen(req)
#
# res = response.read()
# ## 字符串, 需要转成dict/list

response = requests.get(url, headers=headers)
# res = response.content
#print(res)
## 转化函数 res_dict = json.loads(res)
res_dict = json.loads(response.text)

# print 这个res_dict
# print(res_dict)

list_list = res_dict['list']
# print(list_list)
# 遍历 list_list
my_dict = {}
for list_item_dict in list_list:
    # list 列表内的一个item, 他是一个dict
    data_str = list_item_dict['data']
    data_dict = json.loads(data_str)
    my_dict['uid'] = data_dict['id']
    my_dict['title'] = data_dict['title']
    my_dict['description'] = data_dict['description']
    my_dict['target'] =data_dict['target']
    try:
        sql = 'insert into xueqiu(uid,title,description,target) values ("{uid}","{title}","{description}","{target}")'.format(**my_dict)
        mc = mysql_conn()
        mc.execute_modify_mysql(sql)
    except:
        pass

  

猜你喜欢

转载自www.cnblogs.com/gxsmm/p/9484813.html
今日推荐