控制器

//获取并插入

//XPath获取
public JsonResult Add(string url)
{
HtmlWeb web = new HtmlWeb();
HtmlDocument document = web.Load(url);
//创建html的节点
HtmlNode node1 = document.DocumentNode;
//获取需要的内容节点
string jiedian = "//*[@id='761dfa3c-837a-6ba5-6b1b-9fa9afad498e']";
//获取需要的内容
HtmlNode node2 = node1.SelectSingleNode(jiedian);
string con = node2.InnerText;
//字符串替换
string str1 = con.Replace("\r\n\t", "").Replace("\r\n\t", "").Replace("\r\n", ""); //字符串截取
string[] str2 = str1.Split('\t');
StringBuilder builder = new StringBuilder();
foreach (string item in str2 )
{
if (!string.IsNullOrEmpty(item.Trim()))
{
builder.Append("insert into Files values('" + item + "')");
}
}
string sql = builder.ToString();
int i = db.ExeNonQuery(sql);
return Json(i);
}

//读取

public JsonResult GetList()
{
string sql = "select * from Files";
DataTable dt = db.GetTable(sql);
List<FilesViewModel> list = new List<FilesViewModel>();
foreach (DataRow item in dt.Rows)
{
FilesViewModel files = new FilesViewModel();
files.Name = item["Name"].ToString();
list.Add(files);
}
return Json(list);
}

//视图采用ajax获取

<div>
<table>
<tr>
<td>Url:<input id="url" type="text" /><input id="Button1" type="button" value="开始爬取" onclick="paqu()" /></td>
</tr>
<tr>
<td>内容</td>
</tr>
<tbody id="content"> </tbody>
</table>
</div>
<script> function paqu() {
var url = $("#url").val();
$.ajax({
url: "/Files/Add",
type: "post",
data: { url: url },
success: function (data) {
if (data > ) {
alert("添加成功");
load();
}
}
})
} function load() {
$.ajax({
url: "/Files/GetList",
type: "post",
success: function (data) {
$("#content").empty();
$(data).each(function () {
var tr = "<tr><td>" + this.Name + "</td></tr>";
$("#content").append(tr);
})
}
})
}
</script>

MVC爬取网页指定内容到数据库的更多相关文章

  1. Python入门,以及简单爬取网页文本内容

    最近痴迷于Python的逻辑控制,还有爬虫的一方面,原本的目标是拷贝老师上课时U盘的数据.后来发现基础知识掌握的并不是很牢固.便去借了一本Python基础和两本爬虫框架的书.便开始了自己的入坑之旅 言 ...

  2. java实现多线程使用多个代理ip的方式爬取网页页面内容

    项目的目录结构 核心源码: package cn.edu.zyt.spider; import java.io.BufferedInputStream; import java.io.FileInpu ...

  3. [python] 常用正则表达式爬取网页信息及分析HTML标签总结【转】

    [python] 常用正则表达式爬取网页信息及分析HTML标签总结 转http://blog.csdn.net/Eastmount/article/details/51082253 标签: pytho ...

  4. Python爬取豆瓣指定书籍的短评

    Python爬取豆瓣指定书籍的短评 #!/usr/bin/python # coding=utf-8 import re import sys import time import random im ...

  5. 使用webdriver+urllib爬取网页数据(模拟登陆,过验证码)

    urilib是python的标准库,当我们使用Python爬取网页数据时,往往用的是urllib模块,通过调用urllib模块的urlopen(url)方法返回网页对象,并使用read()方法获得ur ...

  6. 5分钟掌握智联招聘网站爬取并保存到MongoDB数据库

    前言 本次主题分两篇文章来介绍: 一.数据采集 二.数据分析 第一篇先来介绍数据采集,即用python爬取网站数据. 1 运行环境和python库 先说下运行环境: python3.5 windows ...

  7. python3爬虫爬取网页思路及常见问题(原创)

    学习爬虫有一段时间了,对遇到的一些问题进行一下总结. 爬虫流程可大致分为:请求网页(request),获取响应(response),解析(parse),保存(save). 下面分别说下这几个过程中可以 ...

  8. 【网络爬虫】【python】网络爬虫(五):scrapy爬虫初探——爬取网页及选择器

    在上一篇文章的末尾,我们创建了一个scrapy框架的爬虫项目test,现在来运行下一个简单的爬虫,看看scrapy爬取的过程是怎样的. 一.爬虫类编写(spider.py) from scrapy.s ...

  9. Python使用urllib,urllib3,requests库+beautifulsoup爬取网页

    Python使用urllib/urllib3/requests库+beautifulsoup爬取网页 urllib urllib3 requests 笔者在爬取时遇到的问题 1.结果不全 2.'抓取失 ...

随机推荐

  1. 对mysql数据库字符串类型的数字排序

    select * from user where  1=1 order by  salary*1 desc limit 0,5 or select * from user where  1=1 ord ...

  2. SQL中的Continue和Break

    x 在Sql Server中,sql语句包含While循环的时候,肯定都或多或少的用到Continue和Break... 下面撸了一个小Demo , Begin ),@Index) Begin Pri ...

  3. ubuntu16.04安装kinetic调用gazebo_control解决方案

    解决方案 sudo apt-get install ros-kinetic-gazebo-ros-control

  4. {03--CSS布局设置} 盒模型 二 padding bode margin 标准文档流 块级元素和行内元素 浮动 margin的用法 文本属性和字体属性 超链接导航栏 background 定位 z-index

    03--CSS布局设置 本节目录 一 盒模型 二 padding(内边距) 三 boder(边框) 四 简单认识一下margin(外边距) 五 标准文档流 六 块级元素和行内元素 七 浮动 八 mar ...

  5. POJ 2408 - Anagram Groups - [字典树]

    题目链接:http://poj.org/problem?id=2408 World-renowned Prof. A. N. Agram's current research deals with l ...

  6. [No0000D7]img生成器.bat合并所有图片到html网页中

    @ECHO OFF IF EXIST %~nx0.html DEL /F /Q %~nx0.html ECHO ^<html^>^<head^>^<title^>% ...

  7. zabbix zatree centos7安装zabbix-agent

    https://github.com/Emersonxuelinux/zatree-3.0-/tree/master/zabbix-3.0.x /bin/sh /config/ds.sh /tmp/z ...

  8. Web开发——JavaScript基础

    参考学习: MDN JavaScript:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript ECMAScript 6入门(阮一峰):htt ...

  9. postgre

    切换用户:su postgres 启动:psql 查看有哪些数据库: \l 切换到数据库air: \c air 列出数据库中所有表: \d 列出指定表的所有字段信息: \d+ dag 或者 \d da ...

  10. python 遍历list并删除部分元素

    python 遍历list并删除部分元素https://blog.csdn.net/afgasdg/article/details/82844403有两个list,list_1 为0-9,list_2 ...