当前位置:首页 » 编程语言 » python点赞

python点赞

发布时间: 2022-08-19 16:08:28

1. python 如何爬取爱奇艺点赞数

可以使用一个专业的爬虫开发框架scrapy来实现你这一个需求,核心工作就是三步:定义item类,开发spider类,开发pipeline。具体实现细节可以参考《疯狂Python讲义》这本书,书里面讲的非常详细,清楚,我就是照这本书做过一个类似的例子

2. 最好的python视频教程谁有

你看看这个教程适不适合你,如果适合的话,可以找我要一下视频!
阶段一:Python开发基础
Python全栈开发与人工智能之Python开发基础知识学习内容包括:Python基础语法、数据类型、字符编码、文件操作、函数、装饰器、迭代器、内置方法、常用模块等。
阶段二:Python高级编程数据库开发
Python全栈开发与人工智能之Python高级编程和数据库开发知识学习内容包括:面向对象开发、Socket网络编程、线程、进程、队列、IO多路模型、Mysql数据库开发等。
阶段三:前端开发
Python全栈开发与人工智能之前端开发知识学习内容包括:Html、CSS、JavaScript开发、Jquery&bootstrap开发、前端框架VUE开发等。
阶段四:WEB框架开发
Python全栈开发与人工智能之WEB框架开发学习内容包括:Django框架基础、Django框架进阶、BBS+Blog实战项目开发、缓存和队列中间件、Flask框架学习、Tornado框架学习、Restful API等。
阶段五:爬虫开发
Python全栈开发与人工智能之爬虫开发学习内容包括:爬虫开发实战。
阶段六:全栈项目实战
Python全栈开发与人工智能之全栈项目实战学习内容包括:企业应用工具学习、CRM客户关系管理系统开发、路飞学城在线教育平台开发等。
阶段七:数据分析
Python全栈开发与人工智能之数据分析学习内容包括:金融量化分析。
阶段八:人工智能
Python全栈开发与人工智能之人工智能学习内容包括:机器学习、数据分析 、图像识别、自然语言翻译等。
阶段九:自动化运维&开发
Python全栈开发与人工智能之自动化运维&开发学习内容包括:CMDB资产管理系统开发、IT审计+主机管理系统开发、分布式主机监控系统开发等。
阶段十:高并发语言GO开发
Python全栈开发与人工智能之高并发语言GO开发学习内容包括:GO语言基础、数据类型与文件IO操作、函数和面向对象、并发编程等。

3. xposed + python 怎么爬取微信朋友圈的数据

有JAVA的,你参考一下
主要思路

从UI获取文本信息是最为简单的方法,于是应该优先逆向UI代码部分。

逆向微信apk

首先解包微信apk,用dex2jar反编译classes.dex,然后用JD-GUI查看jar源码。当然,能看到的源码都是经过高度混淆的。但是,继承自安卓重要组件(如Activity、Service等)的类名无法被混淆,于是还是能从中看到点东西。

首先定位到微信APP package。我们知道这个是 com.tencent.mm

在 com.tencent.mm
中,我们找到一个 ui
包,有点意思。
展开 com.tencent.mm.ui
,发现多个未被混淆的类,其中发现 MMBaseActivity
直接继承自 Activity
, MMFragmentActivity
继承自 ActionBarActivity
, MMActivity
继承自 MMFragmentActivity
,并且 MMActivity
是微信中大多数Activity的父类:

public class MMFragmentActivity
extends ActionBarActivity
implements SwipeBackLayout.a, b.a {
...
}
public abstract class MMActivity
extends MMFragmentActivity {
...
}
public class MMBaseActivity
extends Activity {
...
}

现在需要找出朋友圈的Activity,为此要用Xposed hook MMActivity


创建一个Xposed模块

参考 [TUTORIAL]Xposed mole devlopment
,创建一个Xposed项目。

简单Xposed模块的基本思想是:hook某个APP中的某个方法,从而达到读写数据的目的。

小编尝试hook com.tencent.mm.ui.MMActivity.setContentView
这个方法,并打印出这个Activity下的全部TextView内容。那么首先需要遍历这个Activity下的所有TextView,遍历ViewGroup的方法参考了SO的以下代码:

private void getAllTextViews(final View v) {
if (v instanceof ViewGroup) {
ViewGroup vg = (ViewGroup) v;
for (int i = 0; i < vg.getChildCount(); i++) {
View child = vg.getChildAt(i);
getAllTextViews(child);
}
} else if (v instanceof TextView ) {
dealWithTextView((TextView)v); //dealWithTextView(TextView tv)方法:打印TextView中的显示文本
}
}

Hook MMActivity.setContentView
的关键代码如下:

findAndHookMethod("com.tencent.mm.ui.MMActivity", lpparam.classLoader, "setContentView", View.class, new XC_MethodHook() {
...
});

在findAndHookMethod方法中,第一个参数为完整类名,第三个参数为需要hook的方法名,其后若干个参数分别对应该方法的各形参类型。在这里, Activity.setContentView(View view)
方法只有一个类型为 View
的形参,因此传入一个 View.class


现在,期望的结果是运行时可以从Log中读取到每个Activity中的所有的TextView的显示内容。

但是,因为View中的数据并不一定在 setContentView()
时就加载完毕,因此小编的实验结果是,log中啥都没有。

意外的收获

当切换到朋友圈页面时,Xposed模块报了一个异常,异常源从 com.tencent.mm.plugin.sns.ui.SnsTimeLineUI
这个类捕捉到。从类名上看,这个很有可能是朋友圈首页的UI类。展开这个类,发现更多有趣的东西:

这个类下有个子类 a
(被混淆过的类名),该子类下有个名为 gyO
的 ListView
类的实例。我们知道, ListView
是显示列表类的UI组件,有可能就是用来展示朋友圈的列表。

顺藤摸瓜

那么,我们先要获得一个 SnsTimeLineUI.a.gyO
的实例。但是在这之前,要先获得一个 com.tencent.mm.plugin.sns.ui.SnsTimeLineUI.a
的实例。继续搜索,发现 com.tencent.mm.plugin.sns.ui.SnsTimeLineUI
有一个名为 gLZ
的 SnsTimeLineUI.a
实例,那么我们先取得这个实例。

经过测试, com.tencent.mm.plugin.sns.ui.SnsTimeLineUI.a(boolean, boolean, String, boolean)
这个方法在每次初始化微信界面的时候都会被调用。因此我们将hook这个方法,并从中取得 gLZ


findAndHookMethod("com.tencent.mm.plugin.sns.ui.SnsTimeLineUI", lpparam.classLoader, "a", boolean.class, boolean.class, String.class, boolean.class, new XC_MethodHook() {
@Override
protected void afterHookedMethod(MethodHookParam param) throws Throwable {
XposedBridge.log("Hooked. ");
Object currentObject = param.thisObject;
for (Field field : currentObject.getClass().getDeclaredFields()) { //遍历类成员
field.setAccessible(true);
Object value = field.get(currentObject);
if (field.getName().equals("gLZ")) {
XposedBridge.log("Child A found.");
childA = value;
//这里获得了gLZ
...
}
}
}
});

现在取得了 SnsTimeLineUI.a
的一个实例 gLZ
,需要取得这个类下的 ListView
类型的 gyO
属性。

private void dealWithA() throws Throwable{
if (childA == null) {
return;
}
for (Field field : childA.getClass().getDeclaredFields()) { //遍历属性
field.setAccessible(true);
Object value = field.get(childA);
if (field.getName().equals("gyO")) { //取得了gyO
ViewGroup vg = (ListView)value;
for (int i = 0; i < vg.getChildCount(); i++) { //遍历这个ListView的每一个子View
...
View child = vg.getChildAt(i);
getAllTextViews(child); //这里调用上文的getAllTextViews()方法,每一个子View里的所有TextView的文本
...
}
}
}
}

现在已经可以将朋友圈页面中的全部文字信息打印出来了。我们需要根据TextView的子类名判断这些文字是朋友圈内容、好友昵称、点赞或评论等。

private void dealWithTextView(TextView v) {
String className = v.getClass().getName();
String text = ((TextView)v).getText().toString().trim().replaceAll("\n", " ");
if (!v.isShown())
return;
if (text.equals(""))
return;
if (className.equals("com.tencent.mm.plugin.sns.ui.AsyncTextView")) {
//好友昵称
...
}
else if (className.equals("com.tencent.mm.plugin.sns.ui.SnsTextView")) {
//朋友圈文字内容
...
}
else if (className.equals("com.tencent.mm.plugin.sns.ui.MaskTextView")) {
if (!text.contains(":")) {
//点赞
...
} else {
//评论
...
}
}
}

自此,我们已经从微信APP里取得了朋友圈数据。当然,这部分抓取代码需要定时执行。因为从 ListView
中抓到的数据只有当前显示在屏幕上的可见部分,为此需要每隔很短一段时间再次执行,让用户在下滑加载的过程中抓取更多数据。

剩下的就是数据分类处理和格式化输出到文件,受本文篇幅所限不再赘述,详细实现可参考作者GitHub上的源码。

4. python习题(算法

这个就是循环2n次呀。先是让x=x+c,在把c更新一下c=c+b,最后让b=b+a,这就完成一次循环了。
不过你给的程序不完整。

5. python怎么爬取某个人的微信朋友圈的信息

主要思路
从UI获取文本信息是最为简单的方法,于是应该优先逆向UI代码部分。
逆向微信apk
首先解包微信apk,用dex2jar反编译classes.dex,然后用JD-GUI查看jar源码。当然,能看到的源码都是经过高度混淆的。但是,继承自安卓重要组件(如Activity、Service等)的类名无法被混淆,于是还是能从中看到点东西。
首先定位到微信APP package。我们知道这个是 com.tencent.mm。
在 com.tencent.mm
中,我们找到一个 ui
包,有点意思。
展开 com.tencent.mm.ui
,发现多个未被混淆的类,其中发现 MMBaseActivity直接继承自 Activity
, MMFragmentActivity
继承自 ActionBarActivity
, MMActivity
继承自 MMFragmentActivity
,并且 MMActivity
是微信中大多数Activity的父类:
public class MMFragmentActivity
extends ActionBarActivity
implements SwipeBackLayout.a, b.a {
...
}
public abstract class MMActivity
extends MMFragmentActivity {
...
}
public class MMBaseActivity
extends Activity {
...
}
现在需要找出朋友圈的Activity,为此要用Xposed hook MMActivity。
创建一个Xposed模块
参考 [TUTORIAL]Xposed mole devlopment,创建一个Xposed项目。
简单Xposed模块的基本思想是:hook某个APP中的某个方法,从而达到读写数据的目的。
小编尝试hook com.tencent.mm.ui.MMActivity.setContentView这个方法,并打印出这个Activity下的全部TextView内容。那么首先需要遍历这个Activity下的所有TextView,遍历ViewGroup的方法参考了SO的以下代码:
private void getAllTextViews(final View v) {if (v instanceof ViewGroup) {
ViewGroup vg = (ViewGroup) v;
for (int i = 0; i < vg.getChildCount(); i++) {View child = vg.getChildAt(i);
getAllTextViews(child);
}
} else if (v instanceof TextView ) {
dealWithTextView((TextView)v); //dealWithTextView(TextView tv)方法:打印TextView中的显示文本}
}
Hook MMActivity.setContentView
的关键代码如下:
findAndHookMethod("com.tencent.mm.ui.MMActivity", lpparam.classLoader, "setContentView", View.class, new XC_MethodHook() {...
});
在findAndHookMethod方法中,第一个参数为完整类名,第三个参数为需要hook的方法名,其后若干个参数分别对应该方法的各形参类型。在这里, Activity.setContentView(View view)方法只有一个类型为 View
的形参,因此传入一个 View.class

现在,期望的结果是运行时可以从Log中读取到每个Activity中的所有的TextView的显示内容。
但是,因为View中的数据并不一定在 setContentView()时就加载完毕,因此小编的实验结果是,log中啥都没有。
意外的收获
当切换到朋友圈页面时,Xposed模块报了一个异常,异常源从 com.tencent.mm.plugin.sns.ui.SnsTimeLineUI这个类捕捉到。从类名上看,这个很有可能是朋友圈首页的UI类。展开这个类,发现更多有趣的东西:
这个类下有个子类 a
(被混淆过的类名),该子类下有个名为 gyO的 ListView
类的实例。我们知道, ListView
是显示列表类的UI组件,有可能就是用来展示朋友圈的列表。
顺藤摸瓜
那么,我们先要获得一个 SnsTimeLineUI.a.gyO的实例。但是在这之前,要先获得一个 com.tencent.mm.plugin.sns.ui.SnsTimeLineUI.a的实例。继续搜索,发现 com.tencent.mm.plugin.sns.ui.SnsTimeLineUI有一个名为 gLZ
的 SnsTimeLineUI.a
实例,那么我们先取得这个实例。
经过测试, com.tencent.mm.plugin.sns.ui.SnsTimeLineUI.a(boolean, boolean, String, boolean)这个方法在每次初始化微信界面的时候都会被调用。因此我们将hook这个方法,并从中取得 gLZ。
findAndHookMethod("com.tencent.mm.plugin.sns.ui.SnsTimeLineUI", lpparam.classLoader, "a", boolean.class, boolean.class, String.class, boolean.class, new XC_MethodHook() {@Override
protected void afterHookedMethod(MethodHookParam param) throws Throwable {XposedBridge.log("Hooked. ");
Object currentObject = param.thisObject;
for (Field field : currentObject.getClass().getDeclaredFields()) { //遍历类成员field.setAccessible(true);
Object value = field.get(currentObject);
if (field.getName().equals("gLZ")) {
XposedBridge.log("Child A found.");
childA = value;
//这里获得了gLZ
...
}
}
}
});
现在取得了 SnsTimeLineUI.a
的一个实例 gLZ
,需要取得这个类下的 ListView
类型的 gyO
属性。
private void dealWithA() throws Throwable{if (childA == null) {
return;
}
for (Field field : childA.getClass().getDeclaredFields()) { //遍历属性field.setAccessible(true);
Object value = field.get(childA);
if (field.getName().equals("gyO")) { //取得了gyOViewGroup vg = (ListView)value;
for (int i = 0; i < vg.getChildCount(); i++) { //遍历这个ListView的每一个子View...
View child = vg.getChildAt(i);
getAllTextViews(child); //这里调用上文的getAllTextViews()方法,每一个子View里的所有TextView的文本...
}
}
}
}
现在已经可以将朋友圈页面中的全部文字信息打印出来了。我们需要根据TextView的子类名判断这些文字是朋友圈内容、好友昵称、点赞或评论等。
private void dealWithTextView(TextView v) {String className = v.getClass().getName();String text = ((TextView)v).getText().toString().trim().replaceAll("\n", " ");if (!v.isShown())
return;
if (text.equals(""))
return;
if (className.equals("com.tencent.mm.plugin.sns.ui.AsyncTextView")) {//好友昵称
...
}
else if (className.equals("com.tencent.mm.plugin.sns.ui.SnsTextView")) {//朋友圈文字内容
...
}
else if (className.equals("com.tencent.mm.plugin.sns.ui.MaskTextView")) {if (!text.contains(":")) {
//点赞
...
} else {
//评论
...
}
}
}
自此,我们已经从微信APP里取得了朋友圈数据。当然,这部分抓取代码需要定时执行。因为从 ListView中抓到的数据只有当前显示在屏幕上的可见部分,为此需要每隔很短一段时间再次执行,让用户在下滑加载的过程中抓取更多数据。
剩下的就是数据分类处理和格式化输出到文件,受本文篇幅所限不再赘述,详细实现可参考作者GitHub上的源码。

6. 求python书籍推荐

关于Python,程序江湖里从不缺少金句:“人生苦短,我用Python!”“学完Python,便可上天!”,而最近这些话从调侃正在变为事实!

上周,PYPL(编程语言受欢迎程度) 四月官方榜单已发布,Python荣获NO.1,相比去年 4 月份,今年上涨了 5.2%,成绩颇为亮眼,从去年开始,Python就开始霸占榜单长达1年,成为编程市场上份额最高的语言!

推荐第一本书籍:python安装+基础入门+全面实战

书名:《Python3破冰人工智能:从入门到实战》

今天小编带来了4本Python和python实战方面的书籍,根据自身条件及感兴趣的方向,选择喜欢的书籍进行学习,如果你喜欢,欢迎点赞分享。

7. 想要用python3做个软件对网页自动化操作,需要搭建什么环境,如何实现

只用python就行了啊。vs和pycharm都算是编辑器没什么关系啊,就是用记事本编辑也行哦。那就用pycharm吧,大家都吹嘘它好用。
就是用python的urllib模块请求网页就可以了。
登录就是post数据,然后获得cookie(可能还有一下其他的东西),带着它就可以做一些评论。
评论就是根据按钮找到相关的网页链接,向它post/get数据。
评论采集就是请求相关的网页,获得评论的数据,可能是html或者json之类的,然后用beautifulsoup或者json分析,获得格式化后的数据。
以前用Python做过一个空间的自动点赞、自动回复说说留言、获取留言的程序。
只要就是分析链接和js脚本费点时间。其他地方都简单。

8. 如何用python 获取网页的点赞数目

主要思路 从UI获取文本信息是最为简单的方法,于是应该优先逆向UI代码部分。 逆向微信apk 首先解包微信apk,用dex2jar反编译classes.dex,然后用JD-GUI查看jar源码。当然,能看到的源码都是经过高度混淆的。但是,继承自安卓重要组件

9. 怎么用Python爬取抖音高点赞高收藏的短视频

用scrapy框架,但是你这样做侵犯了知识版权,如果用于商用,会面临起诉。

记者从北京市海淀区人民法院获悉,因认为刷宝APP采用技术手段或人工方式获取抖音APP短视频及评论并向公众提供的行为构成不正当竞争,北京微播视界科技有限公司(下称微播公司)将北京创锐文化传媒有限公司(下称创锐公司)、成都力奥文化传播有限公司(下称力奥公司)诉至法院。在案件审理过程中,微播公司提出行为保全申请,要求创锐公司、力奥公司立即停止采用技术手段或人工方式获取来源于抖音APP中的视频文件、评论内容并通过刷宝APP向公众提供的行为。北京海淀法院于6月28日依法做出行为保全裁定,支持了微播公司的行为保全申请。

微播公司称,其为抖音APP的开发者和运营者,通过投入高额的运营成本、提供优质的原创内容在同类产品中形成竞争优势,微播公司对抖音APP中的短视频及评论享有合法权益。二被申请人作为同业竞争者,在其共同运营的刷宝APP中向公众提供非法抓取自抖音APP的短视频及用户评论,已取证的短视频数量达5万余条。二被申请人的上述行为削弱了微播公司的竞争优势,违反了反不正当竞争法第二条的规定,构成不正当竞争。

10. 学Python能干什么

Python可以做什么?
1)网站后端程序员:使用它单间网站,后台服务比较容易维护。如:Gmail、Youtube、知乎、豆瓣
2)自动化运维:自动化处理大量的运维任务
3)数据分析师:快速开发快速验证,分析数据得到结果
4)游戏开发者:一般是作为游戏脚本内嵌在游戏中
5)自动化测试:编写为简单的实现脚本,运用在Selenium/lr中,实现自动化。
6)网站开发:借助django,flask框架自己搭建网站。
7)爬虫获取或处理大量信息:批量下载美剧、运行投资策略、爬合适房源、系统管理员的脚本任务等。

热点内容
新名图配置怎么样 发布:2024-05-19 09:31:30 浏览:94
php获取子节点 发布:2024-05-19 09:21:18 浏览:160
php生成html 发布:2024-05-19 09:20:24 浏览:795
keil编译步骤 发布:2024-05-19 08:58:12 浏览:702
ipad有哪些好用的c语言编译器 发布:2024-05-19 08:41:56 浏览:767
征途手游版脚本 发布:2024-05-19 08:38:11 浏览:165
安卓咪咕音乐怎么录制视频 发布:2024-05-19 07:56:06 浏览:838
如何搞出超大声的听声辨位安卓版 发布:2024-05-19 07:46:21 浏览:927
linux安全模式 发布:2024-05-19 07:27:25 浏览:176
为什么安卓手机安装不了cpk 发布:2024-05-19 07:22:21 浏览:313