Add HackerNews python plugin as the Demo.

This commit is contained in:
qianlifeng
2014-07-10 18:39:04 +08:00
parent 5f7c1ea4f4
commit d89968cfa5
12 changed files with 76 additions and 53 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.4 KiB

View File

@@ -0,0 +1,27 @@
#encoding=utf8
from __future__ import unicode_literals
import requests
from bs4 import BeautifulSoup
import json
import webbrowser
from wox import Wox
class HackerNews(Wox):
def query(self,key):
r = requests.get('https://news.ycombinator.com/')
bs = BeautifulSoup(r.text)
results = []
for i in bs.select(".comhead"):
title = i.previous_sibling.text
url = i.previous_sibling["href"]
results.append({"Title": title ,"IcoPath":"Images/app.ico","JsonRPCAction":{"method": "openUrl", "parameters": url}})
return results
def openUrl(self,url):
webbrowser.open(url)
if __name__ == "__main__":
HackerNews()

View File

@@ -1,8 +1,8 @@
{
"ID":"D2D2C23B084D411DB66FE0C79D6C2A6H",
"ActionKeyword":"v2ex",
"Name":"Wox.Plugin.v2ex",
"Description":"v2ex viewer",
"ID":"D2D2C23B084D411DB66FE0C79D6C1B7H",
"ActionKeyword":"hn",
"Name":"Hacker News",
"Description":"Hacker News@https://news.ycombinator.com",
"Author":"qianlifeng",
"Version":"1.0",
"Language":"python",
@@ -10,4 +10,3 @@
"IcoPath":"Images\\app.ico",
"ExecuteFileName":"main.py"
}

View File

@@ -0,0 +1 @@
d:\Personal\wox.jsonrpc\Output\Debug\PythonHome\python.exe main.py "{\"jsonrpc\": \"2.0\", \"method\": \"query\", \"params\": \"l\", \"id\": 1}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -1,34 +0,0 @@
#encoding=utf8
from __future__ import unicode_literals
import requests
from bs4 import BeautifulSoup
import json
import webbrowser
def safeSelectText(s,path):
return s.select(path)[0].text if len(s.select(path)) > 0 else ""
def query(key):
r = requests.get('http://v2ex.com/?tab=all')
bs = BeautifulSoup(r.text)
results = []
for i in bs.select(".box div.item"):
res = {}
title = safeSelectText(i,".item_title")
subTitle = safeSelectText(i,".fade")
url = "http://v2ex.com" + i.select(".item_title a")[0]["href"]
res["Title"] = title
res["SubTitle"] = subTitle
res["ActionName"] = "openUrl"
res["IcoPath"] = "Images\\app.ico"
res["ActionPara"] = url
results.append(res)
return json.dumps(results)
def openUrl(url):
webbrowser.open(url)
if __name__ == "__main__":
print query("movie geo")