首页 文章 精选 留言 我的

精选列表

搜索[MoE动态路由],共10000篇文章
优秀的个人博客,低调大师

python-利用豆瓣爬虫发个动态

目前总的来说是失败了。原因可能是因为豆瓣验证码的问题,因为我看不到登录时候的界面,所以没法分析验证码的链接。(我用自己的浏览器登录都是默认不要验证码的,这就尴尬了),所以登录不上,后面的post也就没有意义了。把代码贴出来。 # -*- coding: utf-8 -*- """ Created on Sat Jan 6 14:45:40 2018 @author: xglc """ import requests import time session = requests.session() #创建request对象 def _login(iddata): url = 'https://www.douban.com/accounts/login' login_header = { 'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36', 'Origin':'https://www.douban.com/accounts/login', } session.headers.update(login_header) session.post(url,data=iddata,headers=session.headers) #_login() #print(session.headers.items) def _saysth(say_data): url = 'https://www.douban.com/' add_headers = {'Cache-Control':'max-age=0', 'Content-Length':'20', 'Content-Type':'application/x-www-form-urlencoded' } session.headers.update(add_headers) session.post(url,data=say_data,headers=session.headers) if __name__ == '__main__': iddata = {'form_mail':'账号', 'form_password':'密码', 'redir':'https://www.douban.com', 'login':'登录', } _login(iddata) print ('_login') # print (session.headers.items) for i in range(5): print(5-i) time.sleep(1) say_data = {'ck':'OJop', 'comment':'vict', } _saysth(say_data) print('完成!') View Code 也不打算继续扣了,因为用的是自己平时用的账号,post 太多豆瓣别把我给封了?如果继续扣的话,大概方向有两点: 找出豆瓣验证码的链接(我手动登录完全看不到验证码,这是我的常用电脑,所以无法分析) 完善update一下headers的内容,那里还有一些需要修改的项。 这几天淮南雪都开始化了,零下5度,made,空调还给我偶尔出冷风,需要赶紧上班去办公室温暖一下。 手动分析豆瓣js查看: Python-关于豆瓣发布“说句话”,添加网页等的js行为分析

优秀的个人博客,低调大师

Android动态刷新listview中的数据

之前一直困扰listview刷新后位置的问题,现在才明白,原来不能重新设置listview的adapter,而应该用notifyDataSetChanged()来刷新,这样位置就不会置顶。 下面做了一个测试的例子,点击最后一条记录,会增加一条新的记录, 代码如下: 1.TestAdapter package com.TestAdapter; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import android.app.Activity; import android.content.Context; import android.os.Bundle; import android.view.View; import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.AbsListView.OnScrollListener; import android.widget.AdapterView.OnItemClickListener; import android.widget.AdapterView.OnItemSelectedListener; import android.widget.AbsListView; import android.widget.ImageView; import android.widget.ListView; import android.widget.SimpleAdapter; import android.widget.TextView; import android.widget.Toast; public class TestAdapter extends Activity { /** Called when the activity is first created. */ private int[] images ; private ListView listview; private MyAdapter adapter; List<Map<String,Integer>> al; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); images = new int[]{android.R.drawable.ic_btn_speak_now, android.R.drawable.alert_light_frame, android.R.drawable.arrow_down_float, android.R.drawable.arrow_up_float, android.R.drawable.btn_star_big_off, android.R.drawable.btn_star_big_on, android.R.drawable.button_onoff_indicator_off, android.R.drawable.button_onoff_indicator_on, android.R.drawable.checkbox_off_background, android.R.drawable.checkbox_on_background, android.R.drawable.ic_btn_speak_now, android.R.drawable.ic_delete}; listview = (ListView)findViewById(R.id.listview); al = new ArrayList<Map<String,Integer>>(); for(int i=0; i<12; i++){ HashMap<String,Integer > map = new HashMap<String,Integer>(); map.put(""+i, images[i]); al.add(map); } adapter = new MyAdapter(this, al, R.layout.list_item, new String[]{"imageview", "tv"}, new int[]{R.id.imageview, R.id.tv}); listview.setAdapter(adapter); listview.setOnItemClickListener(new OnItemClickListener() { public void onItemClick(AdapterView<?> arg0, View arg1, int count, long arg3) { if(adapter.getCount()==count+1){ HashMap<String ,Integer> map = new HashMap<String, Integer>(); map.put(""+(adapter.mItemList.size()), android.R.drawable.ic_dialog_email); al.add(map); adapter.mItemList = al; adapter.notifyDataSetChanged(); Toast.makeText(TestAdapter.this, "正在刷新", Toast.LENGTH_SHORT).show(); } } }); } private class MyAdapter extends SimpleAdapter{ int count = 0; private List<Map<String, Integer>> mItemList; public MyAdapter(Context context, List<? extends Map<String, Integer>> data, int resource, String[] from, int[] to) { super(context, data, resource, from, to); mItemList = (List<Map<String, Integer>>) data; if(data == null){ count = 0; }else{ count = data.size(); } } public int getCount() { return mItemList.size(); } public Object getItem(int pos) { return pos; } public long getItemId(int pos) { return pos; } @Override public View getView(int position, View convertView, ViewGroup parent) { Map<String ,Integer> map = mItemList.get(position); int image = map.get(""+position); View view = super.getView(position, convertView, parent); ImageView imageview = (ImageView)view.findViewById(R.id.imageview); TextView tv = (TextView)view.findViewById(R.id.tv); imageview.setBackgroundResource(image); tv.setText(""+position); return view; } } } 2.main.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <ListView android:id="@+id/listview" android:layout_width="fill_parent" android:layout_height="wrap_content" ></ListView> </LinearLayout> 3.list_item.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <ImageView android:id="@+id/imageview" android:layout_width="wrap_content" android:layout_height="wrap_content"> </ImageView> <TextView android:id="@+id/tv" android:layout_width="fill_parent" android:layout_height="wrap_content" ></TextView> </LinearLayout> 本文转自 wws5201985 51CTO博客,原文链接:http://blog.51cto.com/wws5201985/786470,如需转载请自行联系原作者

优秀的个人博客,低调大师

Android Studio + smalidea进行smail动态调试

本人刚接触Android方面的逆向,这是一篇笔记贴,大牛可忽略0x00 用到的工具 Android Studio smalidea Android killer 一部root过的手机 0x01 反编译APK 将apk拖入Android killer中反编译生成工程目录 0x02 Android Studio 安装smalidea 1. 打开Android Studio ,点击File,选择Settings,或者按快捷键Ctrl+Alt+S打开设置界面,点击Plugin,再点击install plugin from disk。。 2. 在弹出的框中选择我们下载好的smalidea,点击OK 经过上面两步就安装好了smalidea插件,特别说明一下,添加成功后,smali代码会语法高亮,如果没有添加成功 原因自查。。。。。。 0x03 导入反编译后的代码 1. 在Android Studio中选中Import Project 2.选择反编译后的Project根目录 3.弹出的窗口选择第一项,一直点击Next,直到Finish完成导入项目 4.导入完成后就可以就可以看到smali了 0x03 进行调试配置 1.在Android Studio中按照如图方式进行配置,添加一个调试 2.添加完调试,修改调试名字和调试端口 3.配置完成后可以的效果 0x04 安装并开始调试 1.首先我们现在MainActivity中的OnCreate函数中鼠标左键下一个断点如图 2.在手机中安装我们的应用并且以调试方式打开 使用的命令 adbinstall-radbshellamstart-D-npackageName/ActivityName 3.打开一个Monitor选中想要调试的应用 4.这里我们监视v0寄存器,F8单步,F7步入,其实和OD的调试差不多的,可以看到寄存器的值改变 5.变量监视窗口,我们可以在这添加并且监视寄存器 这样就可以开始调试smail了,比较简单。 作者:隔壁雷哥 来源:51CTO

优秀的个人博客,低调大师

PgSQL · GIS应用 · 物流, 动态路径规划

背景 双十一背后的技术系列文章 《聊一聊双十一背后的技术 - 分词和搜索》 每年双十一的交易额都创新高,今年也不例外,双十一几乎成了各种IT系统的大考,物流也不例外。 每次双十一快递几乎都被爆仓,但是随着技术的发展,今年,听说双十一刚过,小伙伴们的包裹差不多都收到了,今年的快递效率怎么如此之高呢? 今天,来给大家分享一下物流与背后的数据库技术,当然我讲的还是PostgreSQL, Greenplum, PostGIS一类,大伙了解我的。 物流行业是被电子商务催生的产业之一。 快件的配送和揽件的调度算法是物流行业一个非常重要的课题,直接关系到配送或揽件的时效,以及物流公司的运作成本。 好的算法,可以提高时效,降低成本,甚至可以更好的调动社会资源,就像滴滴打车一样,也许能全民参与哦。 以后也许上班路途还能顺路提供快递服务呢。 本文将以物流行业为例,给大家

优秀的个人博客,低调大师

Android动态Java代码调整window大小

Android调整window大小 举一个例子,设置当前的APP所需要的屏幕高度为设备高度的一半: Window window = getActivity().getWindow(); WindowManager.LayoutParams windowLayoutParams = window.getAttributes(); DisplayMetrics dm= new DisplayMetrics(); window.getWindowManager().getDefaultDisplay().getMetrics(dm); int screenHeight =dm.heightPixels; windowLayoutParams.height = screenHeight/2; window.setAttributes(windowLayoutParams); 代码结果: 需要注意的是,经过这样的代码设置后,将导致整个APP在设备屏幕上的高度占据整个设备高度的一半且居中。可以看到图中剩余的屏幕全部成黑色。而不是某个具体view或者布局的高度占一半。

优秀的个人博客,低调大师

hive 动态分区(Dynamic Partition)异常处理

Changing Hive Dynamic Partition Limits Symptoms: Hive enforces limits on the number of dynamic partitions that it creates. The default is 100 dynamic partitions per node, with a total (default) limit of 1000 dynamic partitions across all nodes. However, this can be tuned. If your job tries to create too many dynamic partitions, you may see a stack trace similar to the following: Diagnostic Messages for this Task:Error: java.lang.RuntimeException: org.apache.hadoop.hive.ql.metadata.HiveFatalException: [Error 20004]: Fatal error occurred when node tried to create too many dynamic partitions. The maximum number of dynamic partitions is controlled by hive.exec.max.dynamic.partitions and hive.exec.max.dynamic.partitions.pernode. Maximum was set to: 100at org.apache.hadoop.hive.ql.exec.mr.ExecReducer.reduce(ExecReducer.java:283)at org.apache.hadoop.mapred.ReduceTask.runOldReducer(ReduceTask.java:444)at org.apache.hadoop.mapred.ReduceTask.run(ReduceTask.java:392)at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:167)at java.security.AccessController.doPrivileged(Native Method)at javax.security.auth.Subject.doAs(Subject.java:415)at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1556)at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:162)Caused by: org.apache.hadoop.hive.ql.metadata.HiveFatalException: [Error 20004]: Fatal error occurred when node tried to create too many dynamic partitions. The maximum number of dynamic partitions is controlled by hive.exec.max.dynamic.partitions and hive.exec.max.dynamic.partitions.pernode. Maximum was set to: 100at org.apache.hadoop.hive.ql.exec.FileSinkOperator.getDynOutPaths(FileSinkOperator.java:747)at org.apache.hadoop.hive.ql.exec.FileSinkOperator.startGroup(FileSinkOperator.java:829)at org.apache.hadoop.hive.ql.exec.Operator.defaultStartGroup(Operator.java:498)at org.apache.hadoop.hive.ql.exec.Operator.startGroup(Operator.java:521)at org.apache.hadoop.hive.ql.exec.mr.ExecReducer.reduce(ExecReducer.java:232)... 7 moreFAILED: Execution Error, return code 2 from org.apache.hadoop.hive.ql.exec.mr.MapRedTaskMapReduce Jobs Launched: Cause: Your Hive job tried to create too many dynamic partitions on a node, exceeding the current limits. The number of dynamic partitions is controlled by the settings forhive.exec.max.dynamic.partitionsandhive.exec.max.dynamic.partitions.pernode. The default is 100 dynamic partitions on a single node, with a limit of 1000 overall. Solution: Set the values forhive.exec.max.dynamic.partitionsandhive.exec.max.dynamic.partitions.pernodeto higher values. For example: SET hive.exec.dynamic.partition=true;SET hive.exec.max.dynamic.partitions=2048;SET hive.exec.max.dynamic.partitions.pernode=256;

优秀的个人博客,低调大师

蚂蚁百灵大模型团队发布 Ling-1T:万亿参数“非思考”模型、基于 MoE 架构

蚂蚁百灵大模型团队正式发布Ling 2.0系列的第一款旗舰非思考模型:拥有万亿参数的Ling-1T。 Ling-1T沿用Ling 2.0 架构,如其模型代号所示,总参数已扩展至1T(Trillion,万亿),每个token激活其中约50B参数。 Ling-1T-base在20T+ token高质量、高推理浓度的语料上完成预训练,支持最高128K上下文窗口,通过“中训练+后训练”的演进式思维链(Evo-CoT)极大提升模型高效推理能力。 Ling-1T 全程采用 FP8 混合精度训练(部分技术已开源),是目前已知规模最大的使用 FP8 训练的基座模型。这一设计为训练带来了显著的显存节省、更灵活的并行切分策略和 15%+ 的端到端加速。 据介绍,Ling-1T在有限输出token条件下,于多项复杂推理基准中取得SOTA表现,展示出在高效思考与精确推理之间的卓越平衡。 开源仓库和体验页面: HuggingFace:https://huggingface.co/inclusionAI/Ling-1T ModelScope:https://modelscope.cn/models/inclusionAI/Ling-1T GitHub:https://github.com/inclusionAI/Ling-V2 Ling chat(国内用户):https://ling.tbox.cn/chat ZenMux(海外开发者,提供 Chat 测试与 API 等能力):https://zenmux.ai/inclusionai/ling-1t

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册