python代码提问

各位大佬有没有人能帮帮忙写一个python爬虫的代码,不用很多,八十行左右就行。没有很高的要求,只要爬的网站不是很偏门就行。

这是我之前爬取京东评论写的,你可以看一下

# coding=utf-8
import requests
import re
import io
import sys
reload(sys)
sys.setdefaultencoding('utf8')
temp='https://item.jd.com/100004325476.html'
headers = {
        'User-Agent': 'Mozilla / 5.0(Windows NT 10.0;Win64;x64) AppleWebKit / 537.36(KHTML, likeGecko) Chrome / 89.0.4389.90Safari / 537.36'
    # 请求的客户端信息
    }
def url(temp):
    jd_id=re.findall("\d+",temp)[0]  # 提取商品id
    # 替换京东商品js中一般的Request URL模板
    l='https://club.jd.com/comment/productPageComments.action?productId=xxx&score=0&sortType=5&page={page_num}&pageSize=10&isShadowSku=1&rid=0&fold=1'
    l=l.replace('xxx', jd_id)  # 替换id
    return l
def init():
        # 实例化类的时候运行初始化函数
        # 打开文件
        file_name = 'jd_commet'
        print '正在打开文件'+file_name+'txt文件!'
def parse_one_page(url,fp):
        # 指定url
        # url='https://club.jd.com/comment/productPageComments.action?productId=100017543968&score=0&sortType=6&page=1&pageSize=10&isShadowSku=100016034372&rid=0&fold=1'
        # 发起请求
        response = requests.get(url, headers=headers)
        # 获取响应
        js_data = response.json()
        # 提取评论列表
        comments_list = js_data['comments']
        for comment in comments_list:
            # 评论内容
            content = comment.get('content')
            content = ' '.join(content.split('\n'))  # 处理换行符
            print(content)
            # 循环写出数据
            fp.write(u'{}\n'.format(content))
            fp.write(u"\n")  # 写入一条数据后加一行空数据
def parse_max_page(l):
        fp = io.open('E:/python/jd_commet.txt', 'w', encoding='utf_8_sig')
        for page_num in range(10):  # 抓包获得最大页数  最大50页,超出自动停止
            # 指定通用的url模板
            new_url=l.format(page_num=page_num) # 把字符串替换为变量
            print '正在获取第'+str(page_num)+'页'
            # 调用函数
            parse_one_page(url=new_url, fp=fp)
        fp.close()
def close_files():
        print('爬虫结束,关闭文件!')
def run(temp):
    init()
    l = url(temp)
    # 开始爬虫
    parse_max_page(l=l)
    # 关闭文件
    close_files()
if __name__ == '__main__':
    run(temp)

 

需要有什么要求没有

请详述你的要求,代码编写过程中遇到了什么问题,才好给你提供针对性的解决思路 。

 这个是爬取qq网广东疫情,并保存为excel 的代码,你看可以吗?

import requests
import openpyxl
import json

url = "https://api.inews.qq.com/newsqa/v1/query/inner/publish/modules/list?modules=chinaDayList,chinaDayAddList,nowConfirmStatis,provinceCompare"

headers={
    'Host' : 'api.inews.qq.com',
    'Origin' : 'https://news.qq.com',
    'Referer' : 'https://news.qq.com/zt2020/page/feiyan.htm',
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 UBrowser/6.2.4098.3 Safari/537.36'
}

response = requests.post(url=url,headers=headers)
data = response.json()['data']['chinaDayAddList']

wb = openpyxl.Workbook()
ws=wb.active
ws.title ="广东疫情"
ws.append(['年份','日期','累计确诊','新增确诊数','总治愈数','总死亡数','新增死亡数','新增治愈数'])
for each in data:
    li = [each['y'],each['date'],each['confirm'],each['localConfirmadd'],each['heal'],each['dead'],each['deadRate'],each['healRate']]
    print(li)
    ws.append(li)
wb.save(r"d:\广东疫情.xlsx")

 

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632