|
吾爱游客
发表于 2023-1-6 11:05
1、申请ID:Adonis142857
2、个人邮箱: 3606221570@qq.com
3、原创技术文章:
本人为学生党,初二学生,拿过noip普及一等奖
主要是搞c#,c++,python方向的,会写一些爬虫,
(1)爬取新浪新闻
import requests #用于发起请求,获取网页信息
from bs4 import BeautifulSoup
import re #正则语言类库
import time
class GetNews:
def __init__(self,keyword,name):
self.headers={
'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.182 Safari/537.36 Edg/88.0.705.74',
'Referer':'https://search.sina.com.cn/'
}
self.keyword=keyword
self.txtname=name
self.news_url=[] #存储每条新闻的url
self.news_title=[] #存储每条新闻的标题
self.news_content=[] #存储新闻内容
self.news_time=[] #存储新闻的发表时间
self.page_cout=0 #搜索结果的页码
def get_page_cout(self):
url = 'https://search.sina.com.cn/?q={0}&c=news&from=channel&ie=utf-8'.format(self.keyword) #查找的关键字url
response = requests.get(url)
response.encoding = 'utf-8'
html =response.text
soup =BeautifulSoup(html,'lxml')
try:
page = soup.select('.l_v2')[0].text
except Exception as e:
page = ''
print(e)
if page !='' :
purl = ''
self.page_cout = re.findall(r'[0-9]\d*',page)
for x in self.page_cout:
purl = purl+x
print(purl)
self.page_cout = int(purl)//20 +1 #总的页数
else:
self.page_cout = 0
return self.page_cout
def get_news_url(self):
url = 'https://search.sina.com.cn/?q={0}&c=news&from=&col=&range=all&source=&country=&size=10&stime=&etime=&time=&dpc=0&a=&ps=0&pf=0&page={1}'
count =input('共找到{}页信息,输入需要爬取的页数(输入【a】将爬取全部):'.format(self.page_cout))
if count=='a':
count = self.page_cout
print('开始爬取新闻链接....')
for x in range(1,int(count)):
url=url.format(self.keyword,x)
req=requests.get(url=url)
req.encoding='utf-8'
soup=BeautifulSoup(req.text,'lxml')
#获取新闻发布时间
reg_time=soup.select('div.date-source>span.date')
str_time=re.findall('<span class="date">(.*?)</span>',str(reg_time),re.S)
self.news_time.append(str_time)
#获取新闻内容
reg_content=soup.select('#article')
data=re.findall('<p cms-style="font-L">(.*?)</p>',str(reg_content),re.S) #re.S参数,多行匹配
str_data=''.join(data).replace('\u3000\u3000','\n\u3000\u3000') #将data中的数组拼成一个字符串,以|u3000全角空白符换行显示
res=r'<font cms-style=".*">.*?</font>'
if re.search(res,str_data) !='':
str_data=re.sub(res,'',str_data) #去掉内容中多余的标签
self.news_content.append(str_data)
time.sleep(3)
def writer(self):
print('开始写入文本....')
write_flag = True
with open(self.txtname, 'w', encoding='utf-8') as f:
for i in range(len(self.news_title)):
if self.news_content[i]!='':
f.writelines(self.news_title[i])
f.writelines('\n')
f.writelines(self.news_time[i])
f.writelines(self.news_content[i])
else:
continue
f.write('\n\n')
f.close()
if __name__=='__main__':
keyword='粮食'
name='粮食.txt'
gn=GetNews(keyword,name)
gn.get_page_cout()
gn.get_news_url()
gn.get_news_content()
gn.writer()
print('success')
(2)如何处理U盘扩容盘
例:VID = 048D PID = 1234的一芯U盘
1、chipgenius芯片精灵检索厂家,VID,PID
2、查找量产工具,提供一个优质网站(俄语网站):https://www.usbdev.ru/files
此处即为:https://www.usbdev.ru/files/firstchip/fc1179mptools
3、下载最新版工具(版本越新兼容越高,之前我用7月17那一版就提示要用新版本)
4、设定PID、VID、显示内存(内存不好看,可以自己先选速度为先量产一遍,看好内存,加5%再选内存为先再次量产)
5、量产成功(速度为先的话为1时20分左右,内存为先的话为1时40分左右)
希望可以通过,辛苦审核 |
|
发帖前要善用【论坛搜索】功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。 |
|
|
|
|