欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python爬虫系列 - 初探:爬取新闻推送

程序员文章站 2022-04-15 16:44:39
Get发送内容格式 Get方式主要需要发送headers、url、cookies、params等部分的内容。 基本上发送以上四个变量即可,以下是示例代码。 处理JSON文件 主要思路将JSON文件转化为Python字典变量,二者的形式类似。 处理时注意JSON文件中可能同时包含列表List,有时需要 ......

get发送内容格式

get方式主要需要发送headersurlcookiesparams等部分的内容。

t = requests.get(url, headers = header, params = content, cookies = newscookies)

基本上发送以上四个变量即可,以下是示例代码。

url = 'https://weibo.com/a/aj/transform/loadingmoreunlogin'
content = {
    'ajwvr':        6,
    'category':     1760,
    'page':         3,
    'lefnav':       0
    }
header = {
        'user-agent':       r'mozilla/5.0 (windows nt 6.1; wow64) applewebkit/535.1 (khtml, like gecko) chrome/14.0.835.163 safari/535.1',
        'accept':           r'*/*',
        'accept-language':  r'en-us,en;q=0.5',
        'accept-encoding':  r'gzip, deflate',
        'referer':          referer,
        'dnt':              '1',
        'connection':       r'keep-alive'
    }
# "\" 字符可以起到代码换行的作用
newscookies = \
{
    "apache":       "8599973819110.777.1525849965283",
    "sinaglobal":   "8599973819110.777.1525849965283"
}
t = requests.get(url, headers = header, params = content, cookies = newscookies)
print(t.text)

处理json文件

主要思路将json文件转化为python字典变量,二者的形式类似。

处理时注意json文件中可能同时包含列表list,有时需要指定下标,提取字典。

json.loads()

该函数将str类型转换为dict类型,其中字典中的引号为双引号。

p = '''{"a": 1, "b": 2}'''
q = json.loads(p)

json.dumps()

该函数将dict类型的数据转换为str

p = {"a": 1, "b": 2}
q = json.dumps(p)

 通过dataframe保存为xlsx

位于pandas库中的dataframe用法有很多,这里只举一个例子,就是将列表组合成字典,存成dataframe,最后保存xlsx。

labelframe = {
        'date':         newdate,
        'usefulcount':  newuseful,
        'servescore':   newscorea,
        'playscore':    newscoreb
    }
p = pd.dataframe(labelframe)
p.to_excel('a.xlsx')