baidu-tuiguang 0.1.2 → 0.1.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/baidu-tuiguang.gemspec +2 -0
- data/lib/baidu/tuiguang.rb +20 -15
- data/lib/baidu/tuiguang/version.rb +1 -1
- metadata +41 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e1bba111b8f42fce134bfaa3e300adbf2f7bcd83
|
4
|
+
data.tar.gz: ac32dce0e9e443f8555f60d3aa94ddd5ca8b73f7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 994309ebbabebd92160d2c27f017fad60e2678070d359f94a969967bd56ea6f0233376e27d030a6304fc5104ef3cd4aec75e19e8b4c083bca5030c1141ec4d30
|
7
|
+
data.tar.gz: 51717efce5ff0d376706ba2e38219e42815f0035e611f89a25a22807daecfb8fe46e903b7d2e435bc713b7a9e486ab95328ebb7444046c60eb1641ab97e0df5f
|
data/baidu-tuiguang.gemspec
CHANGED
@@ -33,4 +33,6 @@ Gem::Specification.new do |spec|
|
|
33
33
|
spec.add_development_dependency "bundler", "~> 1.14"
|
34
34
|
spec.add_development_dependency "rake", "~> 10.0"
|
35
35
|
spec.add_development_dependency "minitest", "~> 5.0"
|
36
|
+
spec.add_development_dependency "json", "~> 2.0", ">= 2.0.2"
|
37
|
+
spec.add_development_dependency "openssl", "~> 2.0", ">= 2.0.2"
|
36
38
|
end
|
data/lib/baidu/tuiguang.rb
CHANGED
@@ -1,10 +1,11 @@
|
|
1
1
|
require "baidu/tuiguang/version"
|
2
2
|
require 'uri'
|
3
3
|
require 'net/http'
|
4
|
-
require 'json'
|
5
4
|
require 'zlib'
|
6
5
|
require 'stringio'
|
7
6
|
require 'date'
|
7
|
+
require 'json'
|
8
|
+
require 'openssl'
|
8
9
|
|
9
10
|
module Baidu
|
10
11
|
module Tuiguang
|
@@ -18,13 +19,13 @@ module Baidu
|
|
18
19
|
end
|
19
20
|
|
20
21
|
def basic_info
|
21
|
-
data = request("path": 'GET/authInfo', "params": {})
|
22
|
+
data = request('https://tuiguang.baidu.com/request.ajax', "path": 'GET/authInfo', "params": {})
|
22
23
|
{'username' => data['username']}
|
23
24
|
end
|
24
25
|
|
25
26
|
def plans(page = 1, page_size = 20)
|
26
27
|
today = Time.now.to_date
|
27
|
-
data = request(path: 'vega/GET/mtllist/plan', params: {"fields": ["planid", "pausestat", "planname", "shows", "clks", "paysum", "trans", "avgprice", "plandynamicideastat", "acctdynamicideastat", "mPriceFactor", "planstat", "remarketingstat", "deviceprefer", "wregion", "qrstat1", "phonetrans", "allipblackcnt", "clkrate", "wbudget", "plancyc", "showprob", "allnegativecnt", "showpay", "adtype", "acctdynamictagsublinkstat", "acctdynamictitlestat", "acctdynamichotredirectstat", "plandynamictagsublinkstat", "plandynamictitlestat", "plandynamichotredirectstat", "plandynamictitlelist", "plandynamictitleabstract", "acctdynamictitlelist", "acctdynamictitleabstract", "acctscenarizedstatus", "planscenarizedphrasestatus", "atstatus", "atbid", "atbudget", "bidprefer", "pcpricefactor", "inpeople", "remarketingPauseStat", "robotAPlanState"], "levelCond": {"userid": cookies_params['__cas__id__3']}, "pageNo": page, "pageSize": page_size, "startTime": today, "endTime": today})
|
28
|
+
data = request('http://fengchao.baidu.com/nirvana/request.ajax', path: 'vega/GET/mtllist/plan', params: {"fields": ["planid", "pausestat", "planname", "shows", "clks", "paysum", "trans", "avgprice", "plandynamicideastat", "acctdynamicideastat", "mPriceFactor", "planstat", "remarketingstat", "deviceprefer", "wregion", "qrstat1", "phonetrans", "allipblackcnt", "clkrate", "wbudget", "plancyc", "showprob", "allnegativecnt", "showpay", "adtype", "acctdynamictagsublinkstat", "acctdynamictitlestat", "acctdynamichotredirectstat", "plandynamictagsublinkstat", "plandynamictitlestat", "plandynamichotredirectstat", "plandynamictitlelist", "plandynamictitleabstract", "acctdynamictitlelist", "acctdynamictitleabstract", "acctscenarizedstatus", "planscenarizedphrasestatus", "atstatus", "atbid", "atbudget", "bidprefer", "pcpricefactor", "inpeople", "remarketingPauseStat", "robotAPlanState"], "levelCond": {"userid": cookies_params['__cas__id__3']}, "pageNo": page, "pageSize": page_size, "startTime": today, "endTime": today})
|
28
29
|
result = {'data' => [], 'count' => data['totalCount']}
|
29
30
|
data['listData'].each do |item|
|
30
31
|
result['data'] << {
|
@@ -41,7 +42,7 @@ module Baidu
|
|
41
42
|
|
42
43
|
def groups(plan_id, page = 1, page_size = 20)
|
43
44
|
today = Time.now.to_date
|
44
|
-
data = request("path": 'vega/GET/mtllist/unit', "params": {"fields": ["unitid", "planid", "pausestat", "unitname", "planname", "unitbid", "unitMPriceFactor", "shows", "clks", "paysum", "trans", "avgprice", "unitstat", "matchPriceFactor", "matchPriceStatus", "phonetrans", "clkrate", "extbind", "allnegativecnt", "showpay", "deviceprefer", "mPriceFactor", "adtype", "finebidstatus", "atstatus", "atbid", "planatbid", "bidprefer", "pcpricefactor", "planPcpricefactor"], "pageNo": page, "pageSize": page_size, "startTime": today, "endTime": today, "levelCond": {"planid": plan_id}})
|
45
|
+
data = request('http://fengchao.baidu.com/nirvana/request.ajax', "path": 'vega/GET/mtllist/unit', "params": {"fields": ["unitid", "planid", "pausestat", "unitname", "planname", "unitbid", "unitMPriceFactor", "shows", "clks", "paysum", "trans", "avgprice", "unitstat", "matchPriceFactor", "matchPriceStatus", "phonetrans", "clkrate", "extbind", "allnegativecnt", "showpay", "deviceprefer", "mPriceFactor", "adtype", "finebidstatus", "atstatus", "atbid", "planatbid", "bidprefer", "pcpricefactor", "planPcpricefactor"], "pageNo": page, "pageSize": page_size, "startTime": today, "endTime": today, "levelCond": {"planid": plan_id}})
|
45
46
|
result = {'data' => [], 'count' => data['totalCount']}
|
46
47
|
data['listData'].each do |item|
|
47
48
|
result['data'] << {
|
@@ -56,7 +57,7 @@ module Baidu
|
|
56
57
|
|
57
58
|
def keywords(plan_id, group_id, page = 1, page_size = 20)
|
58
59
|
today = Time.now.to_date
|
59
|
-
data = request("path": 'vega/GET/mtllist/word', "params": {"fields": ["winfoid", "unitid", "planid", "wordid", "pausestat", "showword", "unitname", "planname", "wordstat", "bid", "unitbid", "pcqscore", "mqscore", "trans", "paysum", "shows", "clks", "avgprice", "wmatch", "shadow_wurl", "shadow_mwurl", "activestat", "wctrl", "wurl", "pageexp", "mwurl", "showqscore", "blockreason", "confidence", "pcblockreason", "pcconfidence", "matchPriceEnableStatus", "clkrate", "showpay", "adtype", "bidprefer", "mPriceGuide", "leftPriceGuide", "left3PriceGuide", "marker", "mconfidence", "mblockreason", "pcqscorecon", "mqscorecon", "pcrelativity", "mrelativity", "pclandpage", "mlandpage", "pclandpagereason", "mlandpagereason", "addfrom", "modfrom"], "pageNo": page, "pageSize": page_size, "startTime": today, "endTime": today, "levelCond": {"unitid": group_id}})
|
60
|
+
data = request('http://fengchao.baidu.com/nirvana/request.ajax', "path": 'vega/GET/mtllist/word', "params": {"fields": ["winfoid", "unitid", "planid", "wordid", "pausestat", "showword", "unitname", "planname", "wordstat", "bid", "unitbid", "pcqscore", "mqscore", "trans", "paysum", "shows", "clks", "avgprice", "wmatch", "shadow_wurl", "shadow_mwurl", "activestat", "wctrl", "wurl", "pageexp", "mwurl", "showqscore", "blockreason", "confidence", "pcblockreason", "pcconfidence", "matchPriceEnableStatus", "clkrate", "showpay", "adtype", "bidprefer", "mPriceGuide", "leftPriceGuide", "left3PriceGuide", "marker", "mconfidence", "mblockreason", "pcqscorecon", "mqscorecon", "pcrelativity", "mrelativity", "pclandpage", "mlandpage", "pclandpagereason", "mlandpagereason", "addfrom", "modfrom"], "pageNo": page, "pageSize": page_size, "startTime": today, "endTime": today, "levelCond": {"unitid": group_id}})
|
60
61
|
result = {'data' => [], 'count' => data['totalCount']}
|
61
62
|
data['listData'].each do |item|
|
62
63
|
match = ''
|
@@ -112,25 +113,29 @@ module Baidu
|
|
112
113
|
end
|
113
114
|
|
114
115
|
def keyword_pause_and_enable(keyword_id, pause = true)
|
115
|
-
request("path": 'vega/MOD/keyword', "params": {"winfoid": [keyword_id.to_i], "items": {"pausestat": pause ? 1 : 0}})
|
116
|
+
request('http://fengchao.baidu.com/nirvana/request.ajax', "path": 'vega/MOD/keyword', "params": {"winfoid": [keyword_id.to_i], "items": {"pausestat": pause ? 1 : 0}})
|
116
117
|
end
|
117
118
|
|
118
119
|
def keywords_pause_and_enable(keyword_ids = [], pause = true)
|
119
|
-
request("path": 'vega/MOD/adkeyword', "params": {"checkAll": false, "mtlCond": {"levelCond": {"userid": cookies_params['__cas__id__3']}}, "mtlIds": keyword_ids.map {|keyword_id| keyword_id.to_s}, "items": {"pausestat": pause}})
|
120
|
+
request('http://fengchao.baidu.com/nirvana/request.ajax', "path": 'vega/MOD/adkeyword', "params": {"checkAll": false, "mtlCond": {"levelCond": {"userid": cookies_params['__cas__id__3']}}, "mtlIds": keyword_ids.map {|keyword_id| keyword_id.to_s}, "items": {"pausestat": pause}})
|
120
121
|
end
|
121
122
|
|
122
|
-
def request(params = {})
|
123
|
+
def request(url, params = {})
|
123
124
|
params.merge!(
|
124
125
|
"userid": cookies_params['__cas__id__3'],
|
125
126
|
"token": cookies_params['__cas__st__3']
|
126
127
|
)
|
127
128
|
@params = params
|
128
129
|
params[:"params"] = params[:"params"].to_json
|
129
|
-
|
130
|
-
|
131
|
-
@url =
|
132
|
-
http = Net::HTTP.new(
|
133
|
-
|
130
|
+
uri = URI(url)
|
131
|
+
uri.query = URI.encode_www_form(path: params[:"path"])
|
132
|
+
@url = uri.to_s
|
133
|
+
http = Net::HTTP.new(uri.host, uri.port)
|
134
|
+
if uri.scheme == 'https'
|
135
|
+
http.use_ssl = true
|
136
|
+
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
|
137
|
+
end
|
138
|
+
request = Net::HTTP::Post.new(uri)
|
134
139
|
request["accept"] = '*/*'
|
135
140
|
request["accept-encoding"] = 'gzip, deflate'
|
136
141
|
request["accept-language"] = 'zh-CN,zh;q=0.8'
|
@@ -138,8 +143,8 @@ module Baidu
|
|
138
143
|
request["connection"] = 'keep-alive'
|
139
144
|
request["content-type"] = 'application/x-www-form-urlencoded'
|
140
145
|
request["cookie"] = @cookies
|
141
|
-
request["host"] =
|
142
|
-
request["origin"] =
|
146
|
+
request["host"] = uri.host
|
147
|
+
request["origin"] = "#{uri.scheme}://#{uri.host}"
|
143
148
|
request["pragma"] = 'no-cache'
|
144
149
|
request["referer"] = "http://fengchao.baidu.com/nirvana/main.html?userid=#{cookies_params['__cas__id__3']}"
|
145
150
|
request["user-agent"] = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.133 Safari/537.36'
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: baidu-tuiguang
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Xiao Jie
|
@@ -52,6 +52,46 @@ dependencies:
|
|
52
52
|
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '5.0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: json
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - "~>"
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '2.0'
|
62
|
+
- - ">="
|
63
|
+
- !ruby/object:Gem::Version
|
64
|
+
version: 2.0.2
|
65
|
+
type: :development
|
66
|
+
prerelease: false
|
67
|
+
version_requirements: !ruby/object:Gem::Requirement
|
68
|
+
requirements:
|
69
|
+
- - "~>"
|
70
|
+
- !ruby/object:Gem::Version
|
71
|
+
version: '2.0'
|
72
|
+
- - ">="
|
73
|
+
- !ruby/object:Gem::Version
|
74
|
+
version: 2.0.2
|
75
|
+
- !ruby/object:Gem::Dependency
|
76
|
+
name: openssl
|
77
|
+
requirement: !ruby/object:Gem::Requirement
|
78
|
+
requirements:
|
79
|
+
- - "~>"
|
80
|
+
- !ruby/object:Gem::Version
|
81
|
+
version: '2.0'
|
82
|
+
- - ">="
|
83
|
+
- !ruby/object:Gem::Version
|
84
|
+
version: 2.0.2
|
85
|
+
type: :development
|
86
|
+
prerelease: false
|
87
|
+
version_requirements: !ruby/object:Gem::Requirement
|
88
|
+
requirements:
|
89
|
+
- - "~>"
|
90
|
+
- !ruby/object:Gem::Version
|
91
|
+
version: '2.0'
|
92
|
+
- - ">="
|
93
|
+
- !ruby/object:Gem::Version
|
94
|
+
version: 2.0.2
|
55
95
|
description: ''
|
56
96
|
email:
|
57
97
|
- iefsou@163.com
|