易班第二彈

2022-02-06 08:27:37 字數 3927 閱讀 8909

def

get_vote_url():

for i in range(50):

start_url = "

".format(i)

resp = person.get(url=start_url)

response =selector(resp)

url_list = response.css('

.vote-itd2 a::attr(href)

').extract()

next_url = response.css('

.pager .next::attr(href)

').extract()

print(next_url) #

print(url_list) #

整頁投票url

for i in

url_list:

vote_id = re.findall("

vote_id/(.*?)/puid

", i)

author_id = re.findall("

actor_id/(.*?)/status

", i)

#print(author_id)

#print(vote_id)

#print(type(vote_id))

#vote_url = "".format(i)

#"pagetype": 2, (1代表未過期,2代表已過期)

#提取網頁過期時間, 與當前時間做對比

#vote / vote / showdetail / vote_id / 54280789 / puid / 7245623 / group_id / 457740 / actor_id / 12806206 / status / 1

vate_data =

vote_res = person.post(url="

/vote/vote/getvotedetail

", data=vate_data, cookies=cookies,

headers=)

response_f =vote_res.json()

#print(response_f)

#print(type(response_f))

dict1 = response_f['

data']

dict_l = dict1['

vote_list']

dict_t = dict1['

option_list']

#print(dict_t)

#選取全部voptions_id 投票選項id

v_list =

for i in

dict_t:"id

"])print

(v_list)

#提取是否已投票

v_list1 =

for m in

dict_t:

try:

"is_vote"])

except

keyerror:

pass

print

(v_list1)

#min

minimum = int(dict_l['

minimum

']) #

投票數 單選or多選

scopemax = int(dict_l['

scopemax'])

#mount_id

mount_id = int(dict_l['

mount_id

']) #

投票數 單選or多選

#end_time

end_time = dict_l['

votevalue

'] + "

:00"

#結束時間

#時間轉時間戳

timearray = time.strptime(end_time, "

%y-%m-%d %h:%m:%s

") #

時間陣列

timestamp = int(time.mktime(timearray)) #

時間戳print

(timestamp)

if cmp_time(int(timestamp)) == 1 and len(v_list1) == 0: #

判斷是否過期或已投票

voptions_id =voptions_id_chiose(minimum, v_list)

vate_choise(vote_id[0], author_id[0], minimum, scopemax, voptions_id) #投票

vate_comment(vote_id, author_id, mount_id) #

else

: vate_comment(vote_id, author_id, mount_id)

#def vote_chenge(next_url):

#if next_url:

#next_url ="next_url".format("www.yiban.cn/")

#else:

#brack

#ret

#判斷多選or單選

defvoptions_id_chiose(minimum, v_list):

import

random

if minimum == 1:

voptions_id =

i =random.randint(0, minimum)

voptions_id1 = [str(i) for i in voptions_id] #

遍歷各元素使之成為字元元素

str_voptions_id = ""

.join(voptions_id1)

#單選else

: n =len(v_list)

m =random.sample(range(0, n), minimum)

voptions_id =

for i in

m:

print

(voptions_id)

voptions_id1 = [str(i) for i in voptions_id] #

# 遍歷各元素使之成為字元元素

str_voptions_id = ","

.join(voptions_id1)

#多選return

str_voptions_id

#判斷投票是否過期

defcmp_time(end_time):

n_time =time.time()

pagetype = 1

if int(n_time) >end_time:

pagetype = 2

return

pagetype

#選擇投票

defvate_choise(vote_id, author_id, minimum, scopemax, voptions_id):

vate_data =

res = person.post(url="

/vote/vote/act

", data=vate_data, cookies=cookies,

headers=)

print

(res.json())

#def

vate_comment(vote_id, author_id, mount_id):

comment_data =

res = person.post(url="

/vote/vote/addcomment

", data=comment_data, cookies=cookies,

headers=)

print(res.json())

gitlab使用(第二彈)

gitlab 版本建立 回滾 詳見文件如何使用gitlab管理專案 故事背景專案test完了了2次開發,一次緊急修復,最後出現的分支有 master永遠記錄的是最後一次的上線版本 dev永遠記錄的是開發版本 tag dev 1.0 版本1.0,一旦dev 1.0修復完畢後,可丟棄,主要作用是放置修復...

scratch 程式設計第二彈

目標效果 所需要展示的效果就是,天上的女巫飛來飛去,南關不斷的眨眼,而貓頭鷹也在不斷的眨眼,考察方向 單純的迴圈結構的考察 方向,圖形化程式設計迴圈考察 貓頭鷹有兩個背景,這種圖形程式設計的效果就是不斷的進行的切換,而在這個單獨的切換的過程中要進行短暫的停頓一秒的時間 貓頭鷹 塊 女巫 塊 女巫的 ...

Python學習第二彈

編碼 unicode utf 8 gbk 關係 關鍵字 1.continue 終止當前迴圈,進行下一次迴圈 2.break 終止迴圈 題6 使用者登入 三次機會充實 count 0 while count 3 user input 請輸入使用者名稱 pwd input 請輸入密碼 if user l...