當前位置:首頁 » 編程語言 » python網易

python網易

發布時間: 2022-01-10 15:49:23

㈠ 如何使用python爬取網易雲音樂歌單內的歌曲

1首先在瀏覽器在打開網易雲音樂的網頁版,並點進一個歌單。
2.在瀏覽器的開發者工具審查該頁面的元素(一般按f12可以彈出該工具),選擇Network,之後選擇doc可以簡便地找到我們需要的元素。
註:以下兩步第3,第4步主要是為了防止網站的反爬,經過這兩步後,基本可以避開網站的反爬,所以如果你爬取的網站沒有反爬的話,可以跳過這兩步。
3.查看網頁的請求方式--get請求
4.查看header
5.在Response中找到我們所需要的元素所在的標簽位置(如:我們要爬取的是歌曲,既需要尋找歌曲的名字與其id信息,觀察可以發現其中一首歌單中的歌名-moon在類名為「f-hide」的ul標簽的li標簽的a標簽中) ~

㈡ python爬取網易雲音樂的時候ip被封了,怎麼辦

用代理。有很多免費的代理IP,搜索一下就有了。

㈢ 用python的scrapy框架寫的爬取網易新聞的爬蟲,有些正則表達式不知道怎麼寫的大家幫幫忙~

新聞的爬蟲,

㈣ 網易卡達python怎麼導入pygame

沒看懂你的意思,如果是導入pygame,先下載pip( pygame下載器),後安win加R鍵,輸入CMD,輸入代碼pip install pygame後按回車。

㈤ python3 新手一枚,運用Python3.4.1爬網頁,網易的機器學習網頁,報Unicodedecodeerror,該網頁是utf-8.

童鞋,網頁不是utf-8編碼的。

至此,完全顯示正確。

㈥ python在運行程序時報錯,網易查了一下沒明白,求大神解答

第一行的引號不匹配,第二個引號要改成英文引號

㈦ python poplib 模塊 連接gmail出錯 試過163 就沒問題 這是什麼原因

給你一個發送郵件,接收郵件,並且根據郵件頭計算郵件發送,接收時間差的公共代碼

#!/usr/bin/envpython
#coding=utf-8
importsys
importtime
importpoplib
importsmtplib
fromdatetimeimportdatetime
importemail
fromemail.parserimportParser
fromemail.headerimportdecode_header
fromemail.utilsimportparseaddr
fromemail.mime.textimportMIMEText
importre
importpyodbc

defremove_values_from_list(the_list,val):
whilevalinthe_list:
the_list.remove(val)


#郵件發送函數
defsend_mail(mail_host,mail_user,mail_pass,mail_postfix,to_list,sub,content):
me=""+""+mail_user+"@"+mail_postfix+""
#printme
msg=MIMEText(content,_subtype='plain')
msg['Subject']=sub
msg['From']=me
msg['To']=";".join(to_list)#將收件人列表以『;』分隔
try:
server=smtplib.SMTP()
server.connect(mail_host)#連接伺服器
server.login(mail_user,mail_pass)#登錄操作
server.sendmail(me,to_list,msg.as_string())
server.close()
returnTrue
exceptException,e:
#printe
returnFalse
returnFalse
#郵件接收函數
defaccpet_mail(accpet_host,accpet_user,accpet_pass):
mail_list=[]
#printaccpet_host
#print"+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
try:
p=poplib.POP3(accpet_host)
p.user(accpet_user)
p.pass_(accpet_pass)
(mail_count,mail_total_size)=p.stat()#返回一個元組:(郵件數,郵件尺寸)
foriinrange(mail_count):
mail_map={}
#郵件從1開始讀取,retr方法返回一個元組:(狀態信息,郵件,郵件尺寸)
status_info,email_info,email_size=p.retr(str(i+1))
#printdecode_header(email.message_from_string(str(email_info)))[0][0]
#printemail.message_from_string(str(email_info))
message={}
last_email_item,append_flag="",True
#printstr(decode_header(email_info)[0][0])
remove_values_from_list(email_info,'')
forj,email_iteminenumerate(email_info):
ifj==len(email_info)-1:
message["Content"]=email_item
break
email_item_list="".join(email_item.split(" ")).split(":")
iflen(email_item_list)!=2:
ifappend_flag==True:
message[last_email_item]=message.get(last_email_item)+email_item_list[0]
#printemail_item_list[0]
else:
ifemail_item_list[0]inmessage:
append_flag=False
continue
message[email_item_list[0]]=email_item_list[1]
last_email_item=email_item_list[0]
if"Subject"notinmessageor"Content"notinmessage:
p.dele(str(i+1))
continue
#printi+1,message.get("Subject"),message.get("Content")
content_match_list=re.findall(r"Thesendingtime",message.get("Content"))
subject_match_list=re.findall(r"MAILVIEW",message.get("Subject"))
ifsubject_match_list==[]orcontent_match_list==[]:
p.dele(str(i+1))
#printi+1,message.get("Subject"),message.get("Content")
#print"2:"+str(email_info)
continue
#printstr(i+1)
content_list=message.get("Content").split("#")
send_list=content_list[0].split(":")
#print"send_time"+str(datetime.strptime(send_list[1],'%Y%m%d%H%M%S'))
#mail_map["send_time"]=str(datetime.strptime(send_list[1],'%Y%m%d%H%M%S'))
#mail_map["recive_time"]=str(datetime.strptime(message.get("Date"),'%a,%d%b%Y%H:%M:%S+0800'))
sr_list=content_list[1].split("@")
from_list=sr_list[0].split(":")
to_list=sr_list[1].split(":")
#printfrom_list[0]+":"+from_list[1]
mail_map[from_list[0]]=from_list[1]
#printto_list[0]+":"+to_list[1]
mail_map[to_list[0]]=to_list[1]
#print"recive_time:"+str(datetime.strptime(message.get("Date"),'%a,%d%b%Y%H:%M:%S+0800'))
#Mon,30Mar201514:20:58+0800'%a,%d%b%Y%H:%M:%S+0800'
#mail_map["send_time"]=str(datetime.strptime(message.get("Date"),'%a,%d%b%Y%H:%M:%S+0800'))
#從字元串讀取信息-->解密郵件頭-->字元串取[0][0]-->以" "分組-->取第一個-->替換字元串"Fromnobody"為空-->格式化為日期格式-->得到接收時間
#mail_map["recive_time"]=str(datetime.strptime(str(decode_header(email.message_from_string(str(email_info)))[0][0]).split(" ")[0].replace("Fromnobody",""),'%a%b%d%H:%M:%S%Y'))

mail_map["send_time"]=str(time.strftime("%Y-%m-%d%H:%M:%S",time.localtime(time.mktime(email.utils.parsedate(message.get('Date'))))))
receive_time_list=message.get('Received').split(";")
mail_map["recive_time"]=str(datetime.strptime(receive_time_list[len(receive_time_list)-1].replace("(CST)","").lstrip(),'%a,%d%b%Y%H:%M:%S+0800'))
#printmessage
#print"send_time:%s"%mail_map.get('send_time')
#print"recive_time:%s"%mail_map.get('recive_time')
#print"----------------------------------------------------------------"
mail_list.append(mail_map)
p.dele(str(i+1))
p.quit()
returnmail_list
exceptpoplib.error_proto,e:
#print"Loginfailed:",e
p.quit()
returnmail_list
#sys.exit(1)
returnmail_list

#運行當前文件時,執行sendmail和accpet_mail函數
if__name__=="__main__":
'''
mailto_list,mail_send_host=['[email protected]'],"smtp.gacfiatauto.com"
mail_send_user,mail_send_pass,mail_send_postfix="test","GACFiat1234","gacfiatauto.com"
NOW=datetime.now()
now_str=datetime.strftime(NOW,'%Y%m%d%H%M%S')
sub="MAILVIEW"+now_str
content="Thesendingtime:"+now_str+"#from_mail:JV@to_mail:126"
send_mail(mail_send_host,mail_send_user,mail_send_pass,mail_send_postfix,mailto_list,sub,content)
#accpet_host,accpet_user,accpet_pass='pop.126.com','gacfiat','fiat100?'
accpet_host,accpet_user,accpet_pass='pop3.gacfiatauto.com','test','GACFiat1234'
accpet_mail(accpet_host,accpet_user,accpet_pass)
'''
DB2_HOST='10.27.95.30'
DB2_PORT='50000'
DB2_DB='db2s'
DB2_USER='db2admin'
DB2_PWD='fiat100?'
dsn="driver={IBMDB2ODBCDRIVER};database=%s;hostname=%s;port=%s;protocol=tcpip;"%(DB2_DB,DB2_HOST,DB2_PORT)
conn=pyodbc.connect(dsn+"uid="+DB2_USER+";pwd="+DB2_PWD+";");
cursor=conn.cursor()
cursor.execute("select*fromkernel.mail_property")
row=cursor.fetchone()
property_list=[]
#1獲取要發送和接收郵件的屬性信息
whilerow:
(from_mail,from_protocol,from_address,from_host,auth_flag,from_port,from_user,from_password,to_mail,to_protocol,to_address,to_host,to_port,to_user,to_password,is_current,t2)=(row[0],row[1],row[2],row[3],row[4],row[5],row[6],row[7],row[8],row[9],row[10],row[11],row[12],row[13],row[14],row[15],row[16])
row=cursor.fetchone()
ifis_current=="1":#andfrom_mail=='126'andto_mail=="JV":
property_list.append((from_mail,from_protocol,from_address,from_host,auth_flag,from_port,from_user,from_password,to_mail,to_protocol,to_address,to_host,to_port,to_user,to_password,is_current,t2))
cursor.close()
#2發送郵件
forpropertyinproperty_list:
(from_mail,from_protocol,from_address,from_host,auth_flag,from_port,from_user,from_password,to_mail,to_protocol,to_address,to_host,to_port,to_user,to_password,is_current,t2)=property
mailto_list=[to_address]
mail_send_host=from_host
mail_send_user=from_user
mail_send_pass=from_password
mail_send_postfix=from_host.replace(from_protocol+".","")
NOW=datetime.now()
now_str=datetime.strftime(NOW,'%Y%m%d%H%M%S')
sub="MAILVIEW"+now_str
content="Thesendingtime:"+now_str+"#from_mail:"+from_mail+"@to_mail:"+to_mail
#printmail_send_host
send_resp=send_mail(mail_send_host,mail_send_user,mail_send_pass,mail_send_postfix,mailto_list,sub,content)
ifsend_resp:#如果發送失敗,再嘗試發送一次
continue
else:
#print'sendfail,sendagain.'
send_mail(mail_send_host,mail_send_user,mail_send_pass,mail_send_postfix,mailto_list,sub,content)

#3接收郵件
forpropertyinproperty_list:
(from_mail,from_protocol,from_address,from_host,auth_flag,from_port,from_user,from_password,to_mail,to_protocol,to_address,to_host,to_port,to_user,to_password,is_current,t2)=property
accpet_host=to_host
accpet_user=to_user
accpet_pass=to_password
starttime=datetime.now()
#printaccpet_host
mail_list=accpet_mail(accpet_host,accpet_user,accpet_pass)
#4添加郵件記錄信息到DB2資料庫
insert_sql="insertintokernel.mail_data(from_mail,send_time,to_mail,recive_time)values"
fori,mailinenumerate(mail_list):
from_mail,send_time,to_mail,recive_time=mail['from_mail'],mail['send_time'],mail['to_mail'],mail['recive_time']
#printsend_time,from_mail,to_mail,recive_time
insert_sql=insert_sql+"('%s',to_date('%s','yyyy-mm-ddhh24:mi:ss'),'%s',to_date('%s','yyyy-mm-ddhh24:mi:ss')),"%(from_mail,send_time,to_mail,recive_time)
ifi==len(mail_list)-1:
insert_sql=insert_sql[:len(insert_sql)-1]

endtime=datetime.now()
message='開始時間:%s,總共耗時:%ss'%(starttime,(endtime-starttime).seconds)
#printmessage
ifmail_list!=Noneandmail_list!=[]:
#printinsert_sql
cursor=conn.cursor()
cursor.execute(insert_sql)
cursor.commit()
cursor.close()
#sys.exit(1)

㈧ 網易雲音樂python 怎麼使用

### 鍵盤快捷鍵

J Down 下移
K Up 上移
H Back 後退
L Forword 前進
U Prev page 上一頁
D Next page 下一頁
F Search 快速搜索
[ Prev song 上一曲
] Next song 下一曲
Space Play/Pause 播放/暫停
M Menu 主菜單
P Present 當前播放列表
A Add 添加曲目到打碟
Z DJ list 打碟列表
S Star 添加到收藏
C Collection 收藏列表
R Remove 刪除當前條目
Q Quit 退出

### 安裝

$ pip install netease-musicbox

$ brew install mpg123

### 使用

$ musicbox

㈨ 如何用python通過163發送郵件

# 導入 smtplib 和 MIMEText
import smtplib
from email.mime.text import MIMEText
# 定義發送列表
mailto_list=["[email protected]","[email protected]"]
# 設置伺服器名稱、用戶名、密碼以及郵件後綴
mail_host = "smtp.126.com"
mail_user = "user"
mail_pass = "pass"
mail_postfix="126.com"
# 發送郵件函數
def send_mail(to_list, sub, context):
'''''
to_list: 發送給誰
sub: 主題
context: 內容
send_mail("[email protected]","sub","context")
'''
me = mail_user + "<"+mail_user+"@"+mail_postfix+">"
msg = MIMEText(context)
msg['Subject'] = sub
msg['From'] = me
msg['To'] = ";".join(to_list)
try:
send_smtp = smtplib.SMTP()
send_smtp.connect(mail_host)
send_smtp.login(mail_user, mail_pass)
send_smtp.sendmail(me, to_list, msg.as_string())
send_smtp.close()
return True
except (Exception, e):
print(str(e))
return False
if __name__ == '__mian__':
if (True == send_mail(mailto_list,"subject","context")):
print ("測試成功") www.codesky.net
else:
print ("測試失敗")

㈩ 小甲魚大大把Python的視頻在網易雲課堂更新一下唄

支持小甲魚,贊點魚幣回來下載 查看更多答案>>

希望採納

熱點內容
聚合腳本平台 發布:2024-09-20 17:51:55 瀏覽:180
訪問攔截怎麼解除安卓 發布:2024-09-20 17:28:48 瀏覽:275
蘿卜干存儲 發布:2024-09-20 17:21:37 瀏覽:715
蘋果手機如何遷移軟體到安卓手機 發布:2024-09-20 17:21:34 瀏覽:692
查看伺服器ip限制 發布:2024-09-20 16:56:27 瀏覽:389
p搜系統只緩存1頁為什麼 發布:2024-09-20 16:48:51 瀏覽:839
上網的賬號和密碼是什麼東西 發布:2024-09-20 16:31:31 瀏覽:612
安卓手機王者榮耀如何調超高視距 發布:2024-09-20 16:31:30 瀏覽:428
安卓G是什麼app 發布:2024-09-20 16:23:09 瀏覽:81
iphone怎麼壓縮文件 發布:2024-09-20 16:08:18 瀏覽:356