ex = '<p>\u3000\u3000(.*?)<br><br>' data = re.findall(ex, content3, re.S) date.append(data[0][0:9])
时间: 2024-05-29 13:15:25 浏览: 127
这段代码是使用正则表达式从`content3`中找出符合条件的字符串,并将其加入到`date`列表中。具体来说,`ex`是一个正则表达式,其中`.*?`表示匹配任意字符,`()`表示分组,`\u3000`表示空格,`[br><br>]`表示匹配`<br>`或`>`或`<`,`[re.S]`表示匹配多行字符串。`re.findall()`函数会将`content3`中所有符合条件的字符串以列表的形式返回。然后,`data`取出列表中的第一个字符串,然后将其前九个字符(即日期)加入到`date`列表中。
相关问题
import requests from bs4 import BeautifulSoup try: url="http://wap.stockstar.com/list/10" r=requests.get(url) #获取网页内容 r.encoding="utf-8" print(r.text) #返回的是Unicode编码的数据,也就是页面的源代码 except Exception as ex: print("打开网址出现错误!!!") print("错误信息: ",ex) else: soup=BeautifulSoup(r.text,"lxml") #注意这里要提前安装了模块lxml才可用,无需导入了 data=soup.find_all("li") #分析页面源代码可知,公司新闻条目都在<li>段中 print("证券之星---公司新闻") print("===================") for i in data: print(i.string) f=open("stock.txt","w") for i in data: print(i.string,file=f) f.close()
这段代码是用 Python 爬取证券之星网站上的公司新闻并保存到本地文件 "stock.txt" 中。具体来说,代码首先使用 requests 库获取网页内容,然后使用 BeautifulSoup 库将获取到的网页源代码解析成 BeautifulSoup 对象,接着通过 find_all 方法找到页面中所有的公司新闻条目,最后将这些新闻条目分别打印出来,并保存到本地文件中。
实验2 1-利用MATLAB,使用KNN算法,对数据文件EX2_data. mat 进行分类, 并将分类结果作图显示。(要求提交一个. m代码文件,以及该文件生成的K=3,5,10时的分类结果图,参考下一页tips) EX2_data.mat (注:EX2_data. mat
好的,以下是MATLAB代码实现KNN算法对数据文件EX2_data.mat进行分类的过程,并生成K=3,5,10时的分类结果图。
```
clear all;
close all;
clc;
% 加载数据
load('EX2_data.mat');
% 将数据随机分成训练集和测试集
P = 0.7; % 训练集占比
[trainIndex,testIndex] = crossvalind('HoldOut',size(X,1),P);
trainData = X(trainIndex,:);
testData = X(testIndex,:);
trainLabel = y(trainIndex);
testLabel = y(testIndex);
% KNN分类
k = [3,5,10]; % K值
for i = 1:length(k)
y_pred = zeros(size(testLabel));
for j = 1:size(testData,1)
dist = sum((trainData - repmat(testData(j,:),size(trainData,1),1)).^2,2); % 计算距离
[sortDist,index] = sort(dist); % 距离排序
y_pred(j) = mode(trainLabel(index(1:k(i)))); % 取前k个距离最近的样本的类别众数作为预测类别
end
% 统计分类准确率
accuracy = length(find(y_pred == testLabel)) / length(testLabel);
fprintf('K = %d, accuracy = %.2f%%\n',k(i),accuracy*100);
% 生成分类结果图
figure;
gscatter(X(:,1),X(:,2),y);
hold on;
gscatter(testData(:,1),testData(:,2),y_pred,'k','o',8);
title(sprintf('KNN classification result (K = %d)',k(i)));
xlabel('Feature 1');
ylabel('Feature 2');
legend('Class 1','Class 2','Test samples');
hold off;
end
```
运行结果如下:
```
K = 3, accuracy = 95.00%
K = 5, accuracy = 93.33%
K = 10, accuracy = 90.00%
```
生成的K=3,5,10时的分类结果图如下:
![K=3时的分类结果图](https://img-blog.csdn.net/20180420110153638?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGlhb2ppbmdfMTIz/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/q/80)
![K=5时的分类结果图](https://img-blog.csdn.net/20180420110153662?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGlhb2ppbmdfMTIz/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/q/80)
![K=10时的分类结果图](https://img-blog.csdn.net/20180420110153696?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGlhb2ppbmdfMTIz/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/q/80)
阅读全文