标签:name Python text app 爬虫 li print data Day
''' 爬取豌豆荚app数据 - 请求url page2: https://www.wandoujia.com/wdjweb/api/category/more?catId=6001&subCatId=0&page=2&ctoken=vbw9lj1sRQsRddx0hD-XqCNF ''' import requests from bs4 import BeautifulSoup import re ''' 爬虫三部曲 ''' # 1.发送请求 def get_page(url): response = requests.get(url) return response # 2.解析数据 def parse_data(text): soup = BeautifulSoup(text, 'lxml') # print(soup) li_list = soup.find_all(name='li', class_="card") # print(li_list) for li in li_list: # print(li) # print('tank' * 100) app_name = li.find(name='a', class_="name").text # print(app_name) app_url = li.find(name='a', class_="name").attrs.get('href') # print(app_url) download_num = li.find(name='span', class_="install-count").text # print(download_num) app_size = li.find(name='span', attrs={"title": re.compile('\d+MB')}).text # print(app_size) app_data = ''' 游戏名称: {} 游戏地址: {} 下载人数: {} 游戏大小: {} \n '''.format(app_name,app_url,download_num,app_size) print(app_data) with open('wandoujia.txt', 'a', encoding='utf-8') as f: f.write(app_data) f.flush() if __name__ == '__main__': for line in range(1, 2): url = 'https://www.wandoujia.com/wdjweb/api/category/more?catId=6001&subCatId=0&page={}&ctoken=vbw9lj1sRQsRddx0hD-XqCNF'.format(line) print(url) # 1.发送请求 # 往接口发送请求获取响应数据 response = get_page(url) # print(response.text) # import json # json.loads(response.text) # print(type(response.json())) # print('tank ' * 1000) # 把json数据格式转换成python的字典 data = response.json() # print(data['state']) # 通过字典取值获取到li文本 text = data.get('data').get('content') # 2.解析数据 parse_data(text)
标签:name,Python,text,app,爬虫,li,print,data,Day 来源: https://www.cnblogs.com/merliah/p/11130418.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。