使用Python,怎么把Flash Plugin加到webkit中,而不依赖本地的Flash Plugin?

lxguidu 2010-03-11 12:39:42
怎么加载官方(adobe公司) flash plug 到 webkit?如果本机安装了FIRFOX,并且FIRFOX已经安装了 flash plug,那么 webkit 是可以调用FLASH的。现在的问题是不需依赖本地安装 firfox,用程序加载 flash plug,这要怎么实现呢?
...全文
357 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
notax 2010-03-12
  • 打赏
  • 举报
回复
就是用pyinstaller打包有点问题,上面的脚本要~40MB,太大了
lxguidu 2010-03-11
  • 打赏
  • 举报
回复
不知道这样实现行不行(个人感觉不是这样的),这是网上的代码:

m_webView = new QWebView(this);
m_webView->page()->mainFrame()->setScrollBarPolicy(Qt::Horizontal,Qt::ScrollBarAlwaysOff);
m_webView->page()->setLinkDelegationPolicy(QWebPage::DelegateAllLinks);
connect(m_webView,SIGNAL(linkClicked(QUrl)),this,SLOT(openLinkSlot(QUrl)));
m_webView->settings()->setAttribute(QWebSettings::PluginsEnabled, true);
m_webView->settings()->setAttribute(QWebSettings::JavascriptEnabled, true);
m_webView->settings()->setAttribute(QWebSettings::DeveloperExtrasEnabled, true);
m_webView->settings()->setAttribute(QWebSettings::JavascriptCanOpenWindows, true);

或者能不能直接拷贝Flash Plugin的dll库呢(Windows下,Linux下Flash Plugin的库的后缀应该是.so吧,这里为了简单一点,暂不考虑Linux平台)?
lxguidu 2010-03-11
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 lxguidu 的回复:]
不知道这样实现行不行(个人感觉不是这样的),这是网上的代码:

m_webView = new QWebView(this);
m_webView->page()->mainFrame()->setScrollBarPolicy(Qt::Horizontal,Qt::ScrollBarAlwaysOff);
m_webView->page()->setLinkDelegationPolicy(QWebPage::DelegateAllLinks);
connect(m_webView,SIGNAL(linkClicked(QUrl)),this,SLOT(openLinkSlot(QUrl)));
m_webView->settings()->setAttribute(QWebSettings::PluginsEnabled, true);
m_webView->settings()->setAttribute(QWebSettings::JavascriptEnabled, true);
m_webView->settings()->setAttribute(QWebSettings::DeveloperExtrasEnabled, true);
m_webView->settings()->setAttribute(QWebSettings::JavascriptCanOpenWindows, true);

或者能不能直接拷贝Flash Plugin的dll库呢(Windows下,Linux下Flash Plugin的库的后缀应该是.so吧,这里为了简单一点,暂不考虑Linux平台)?

[/Quote]

找了很久,几乎都是C++的^_^!
notax 2010-03-11
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 lxguidu 的回复:]
不知道这样实现行不行(个人感觉不是这样的),这是网上的代码:

m_webView = new QWebView(this);
m_webView->page()->mainFrame()->setScrollBarPolicy(Qt::Horizontal,Qt::ScrollBarAlwaysOff);
m_webView->page()->setLinkDelegationPolicy(QWebPage::DelegateAllLinks);
connect(m_webView,SIGNAL(linkClicked(QUrl)),this,SLOT(openLinkSlot(QUrl)));
m_webView->settings()->setAttribute(QWebSettings::PluginsEnabled, true);
m_webView->settings()->setAttribute(QWebSettings::JavascriptEnabled, true);
m_webView->settings()->setAttribute(QWebSettings::DeveloperExtrasEnabled, true);
m_webView->settings()->setAttribute(QWebSettings::JavascriptCanOpenWindows, true);

或者能不能直接拷贝Flash Plugin的dll库呢(Windows下,Linux下Flash Plugin的库的后缀应该是.so吧,这里为了简单一点,暂不考虑Linux平台)?

[/Quote]


这是C++ 的吧,C++要把QWebPage的QWebSettings::PluginsEnabled 设为 true
http://doc.trolltech.com/4.5/qtwebkit.html

python 的话要用
web.settings().setAttribute(QWebSettings.PluginsEnabled, True)



我在linux 上用pyqt 和flash 没问题, 速度也很快

import sys
from PyQt4.QtCore import *
from PyQt4.QtGui import *
from PyQt4.QtWebKit import *

app = QApplication(sys.argv)

web = QWebView()
web.settings().setAttribute(QWebSettings.PluginsEnabled, True)

web.load(QUrl("http://sports.sina.com.cn/"))
web.show()

sys.exit(app.exec_())
SeimiCrawler An agile,powerful,standalone,distributed crawler framework. SeimiCrawler的目标是成为Java里最实用的爬虫框架,大家一起加油。 简介 SeimiCrawler是一个敏捷的,独立部署的,支持分布式的Java爬虫框架,希望能在最大程度上降低新手开发一个可用性高且性能不差的爬虫系统的门槛,以及提升开发爬虫系统的开发效率。在SeimiCrawler的世界里,绝大多数人只需关心去写抓取的业务逻辑就够了,其余的Seimi帮你搞定。设计思想上SeimiCrawler受Python的爬虫框架Scrapy启发,同时融合了Java语言本身特点与Spring的特性,并希望在国内更方便且普遍的使用更有效率的XPath解析HTML,所以SeimiCrawler默认的HTML解析器是JsoupXpath(独立扩展项目,非jsoup自带),默认解析提取HTML数据工作均使用XPath来完成(当然,数据处理亦可以自行选择其他解析器)。并结合SeimiAgent彻底完美解决复杂动态页面渲染抓取问题。 号外 2016.04.14 用于实现浏览器级动态页面渲染以及抓取的SeimiAgent已经发布。SeimiAgent基于Qtwebkit开发,主流浏览器内核(chrome,safari等),可在服务器端后台运行,并通过http协议发布对外调用API,支持任何语言或框架从SeimiAgent获取服务,彻底的解决动态页面渲染抓取等问题。具体可以参考SeimiAgent主页。SeimiCrawler已经在v0.3.0内置支持SeimiAgent的使用并添加了demo,具体请查看demo或是官方文档。 2016.01.05 专门为SeimiCrawler工程打包部署的maven-seimicrawler-plugin已经发布可用,详细请继续参阅maven-seimicrawler-plugin或是下文工程化打包部署章节。

37,743

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • WuKongSecurity@BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧