大家好,又见面了,我是你们的朋友全栈君。 主要就是这三个库的安装
import requests
from bs4 import BeautifulSoup
import time
这里面最关键的就是 Project interpreter的选择,我看见很多其他博文安装了一大堆东西,还改路径改来改去,真的很麻烦。这里选择interpreter的宗旨就是选择你安装路径的那个Python3.6.终端可以查看你的安装路径。requests库和pip3,还有beatifulsoup的安装其他博文写的也挺多,还有bs4的添加我就不说了。把这些全部弄好,程序还是不能运行,还差最后一个$ pip3 install lxml bs4调用了python自带的html解析器,我用的mac,默认安装的是python2,所以内置的解释器也是在python2上,而我学习的时候又自己安装了python3,开发环境也是python3的,貌似是没有html解释器,所以会报错。 所以在python3也装一个html解析器就好了
import requests
from bs4 import BeautifulSoup
import time
headers = {
'User-Agent':'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.87 Safari/537.36' }
def get_info(url):
wb_data = requests.get(url,headers=headers)
soup = BeautifulSoup(wb_data.text,'lxml')
ranks = soup.select('span.pc_temp_num')
titles = soup.select('div.pc_temp_songlist > ul > li > a')
times = soup.select('span.pc_temp_tips_r > span')
for rank,title,time in zip(ranks,titles,times):
data = {
'rank':rank.get_text().strip(),
'singer':title.get_text().split('-')[0],
'song':title.get_text().split('-')[0],
'time':time.get_text().strip()
}
print(data)
if __name__ == '__main__':
urls = ['http://www.kugou.com/yy/rank/home/{}-8888.html'.format(str(i)) for i in range(1,24)]
for url in urls:
get_info(url)
time.sleep(1)
程序运行截图
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/175272.html原文链接:https://javaforall.cn