99import requests
1010from lxml import etree
1111import jdspider
12- import yaml
13-
14- CONFIG_PATH = './config.yml'
1512
1613jieba .setLogLevel (jieba .logging .INFO )
1714"""
1815ck填到下面就好,只支持网页版的Ck
1916以下为最短格式
2017"""
21- with open (CONFIG_PATH , 'r' , encoding = 'utf-8' ) as f :
22- cfg = yaml .safe_load (f )
23- ck = cfg ['user' ]['cookie' ]
18+ ck = ''
2419
2520headers = {
2621 'cookie' : ck ,
2924
3025
3126# 评价生成
32- def generation (pname , _class = 0 , _type = 1 ):
27+ def generation (pname , _class = 0 ):
3328 list = ['商品名' ]
3429 list .clear ()
3530 list .append (pname )
3631 for item in list :
3732 spider = jdspider .JDSpider (item )
38- result = spider .getData (3 , 3 ) #这里可以自己改
33+ result = spider .getData (4 , 3 ) #这里可以自己改
3934
40- # 0是追评 1是评价
4135 # class 0是评价 1是提取id
4236 try :
4337 name = jieba .analyse .textrank (pname , topK = 5 , allowPOS = 'n' )[0 ]
@@ -46,29 +40,15 @@ def generation(pname, _class=0, _type=1):
4640 if _class == 1 :
4741 return name
4842 else :
49- datas = {
50- 1 : {
51- "开始" : result ,
52- "中间" : result , #重复的几率不大,相信我(
53- "结束" : result
54- },
55- 0 : {
56- "开始" : result ,
57- "中间" : result ,
58- "结束" : result
59- }
60- }
61- if _type == 1 :
62- comments = datas [_type ]
63- return random .randint (3 , 5 ), (
64- random .choice (comments ["开始" ]) + random .choice (comments ["中间" ]) + random .choice (comments ["结束" ])).replace (
65- "$" , name )
66- elif _type == 0 :
67- comments = datas [_type ]
68- return (
69- random .choice (comments ["开始" ]) + random .choice (comments ["中间" ]) + random .choice (comments ["结束" ])).replace (
70- "$" , name )
71-
43+ comments = ''
44+ if len (result ) > 8 :
45+ for i in range (8 ):
46+ comments = comments + result .pop ()
47+ else :
48+ for i in range (len (result )):
49+ comments = comments + result .pop ()
50+ return 5 , (
51+ comments .replace ("$" , name ))
7252
7353# 查询全部评价
7454def all_evaluate ():
@@ -114,7 +94,6 @@ def ordinary(N):
11494 print (f"\t { i } .开始评价订单\t { oname } [{ oid } ]" )
11595 url2 = f"https://club.jd.com/myJdcomments/saveProductComment.action"
11696 xing ,Str = generation (oname )
117- xing = 5 #写死五星
11897 print (f'\t \t 评价内容,星级{ xing } :' , Str )
11998 data2 = {
12099 'orderId' : oid ,
@@ -125,7 +104,7 @@ def ordinary(N):
125104 'anonymousFlag' : '1'
126105 }
127106 pj2 = requests .post (url2 , headers = headers , data = data2 )
128- time .sleep (20 )
107+ time .sleep (10 )
129108 N ['待评价订单' ] -= 1
130109 return N
131110
@@ -173,7 +152,7 @@ def sunbw(N):
173152 'saveStatus' : 3
174153 }, headers = headers )
175154 print ('完成' )
176- time .sleep (50 )
155+ time .sleep (5 )
177156 N ['待晒单' ] -= 1
178157 return N
179158
@@ -198,7 +177,7 @@ def review(N):
198177 print (f'\t 开始第{ i } ,{ oname } ' )
199178 url1 = "https://club.jd.com/afterComments/saveAfterCommentAndShowOrder.action"
200179 pid , oid = _id .replace ('http://club.jd.com/afterComments/productPublish.action?sku=' , "" ).split ('&orderId=' )
201- context = generation (oname , _type = 0 )
180+ context = generation (oname )
202181 print (f'\t \t 追评内容:{ context } ' )
203182 req_url1 = requests .post (url1 , headers = headers , data = {
204183 'orderId' : oid ,
@@ -208,7 +187,7 @@ def review(N):
208187 'score' : 5
209188 })
210189 print ('完成' )
211- time .sleep (30 )
190+ time .sleep (10 )
212191 N ['待追评' ] -= 1
213192 return N
214193
@@ -247,7 +226,7 @@ def Service_rating(N):
247226 }
248227 pj1 = requests .post (url1 , headers = headers , data = data1 )
249228 print ("\t \t " , pj1 .text )
250- time .sleep (25 )
229+ time .sleep (15 )
251230 N ['服务评价' ] -= 1
252231 return N
253232
0 commit comments