go 正则 爬取邮箱代码
package main import (
"net/http"
"fmt"
"io/ioutil"
"regexp"
) var url string = "https://tieba.baidu.com/p/5518324938?red_tag=1795043739"
var reEmail = `(\d+)@qq.com`
func main() { resp, err := http.Get(url)
handError(err) defer resp.Body.Close() bytesContent, err := ioutil.ReadAll(resp.Body) handError(err) getEmail(string(bytesContent)) } // 处理错误
func handError(err error) {
//fmt.Println(err)
if err != nil{
fmt.Println(err)
} } // 获取邮箱 qq邮箱 使用正则
func getEmail(content string) {
re := regexp.MustCompile(reEmail)
list := re.FindAllStringSubmatch(content, -1) var result []string for _,v := range list {
if v != nil{
result = append(result,v[0])
} }
fmt.Println(result) }
结果
GOROOT=/usr/local/go #gosetup
GOPATH=/www/gopath #gosetup
/usr/local/go/bin/go build -i -o /private/var/folders/fc/4txmmczj6q92p6058h3w7t_80000gn/T/___go_build_main_go /www/gopath/src/wang/main.go #gosetup
/private/var/folders/fc/4txmmczj6q92p6058h3w7t_80000gn/T/___go_build_main_go #gosetup
[3304778804@qq.com 742948861@qq.com 1261766424@qq.com 2903927557@qq.com 973327005@qq.com 973327005@qq.com 51061804@qq.com 3154089413@qq.com 2501667505@qq.com 1733510262@qq.com 289207537@qq.com 11886843@qq.com 1069016912@qq.com 765730856@qq.com 643074575@qq.com 330256148@qq.com 2025643306@qq.com 1903987556@qq.com 136772698@qq.com 990242520@qq.com 876958445@qq.com 776283765@qq.com 184756372@qq.com 2580145919@qq.com 710830708@qq.com 459618331@qq.com 964974049@qq.com 1499820286@qq.com 1822036045@qq.com 29522755@qq.com 1903987556@qq.com 2444694413@qq.com]
Process finished with exit code 0
package main import (
"net/http"
"fmt"
"io/ioutil"
"regexp"
) var url string = "https://tieba.baidu.com/p/5934645800"
var reQQEmail = `(\d+)@qq.com`
var reEmail = `\w+@\w+\.\w+`
func main() { content := getPageString(url)
res1 := getEmail(content,reEmail)
res2 := getEmail(content,reQQEmail) fmt.Println("一共找到邮箱",len(res1))
fmt.Println("一共找到邮箱",len(res2)) } // 处理错误
func handError(err error) {
//fmt.Println(err)
if err != nil{
fmt.Println(err)
} } // 获取邮箱 qq邮箱 使用正则
func getEmail(content string,reg string) []string {
re := regexp.MustCompile(reg)
list := re.FindAllStringSubmatch(content, -1) var result []string for _,v := range list {
if v != nil{
result = append(result,v[0])
} }
return result } func getPageString(url string) string {
resp, err := http.Get(url)
handError(err) defer resp.Body.Close() bytesContent, err := ioutil.ReadAll(resp.Body) handError(err)
return string(bytesContent)
}
go 正则 爬取邮箱代码的更多相关文章
- java中使用 正则 抓取邮箱
我们来抓取豆瓣网的邮箱吧!把这个页面的所有邮箱都抓取下来 如https://www.douban.com/group/topic/8845032/: 代码如下: package cn.zhangzon ...
- 正则爬取某段子网站前20页段子(request库)
首先还是谷歌浏览器抓包对该网站数据进行分析,结果如下: 该网站地址:http://www.budejie.com/text 该网站数据都是通过html页面进行展示,网站url默认为第一页,http:/ ...
- requests+正则爬取豆瓣图书
#requests+正则爬取豆瓣图书 import requests import re def get_html(url): headers = {'User-Agent':'Mozilla/5.0 ...
- 用HttpClient和用HttpURLConnection做爬虫发现爬取的代码少了的问题
最近在学习用java来做爬虫但是发现不管用那种方式都是爬取的代码比网页的源码少了很多在网上查了很多都说是inputStream的缓冲区太小而爬取的网页太大导致读取出来的网页代码不完整,但是后面发现并不 ...
- 2019-01-31 Python学习之BFS与DFS实现爬取邮箱
今天学习了python网络爬虫的简单知识 首先是一个爬取百度的按行读取和一次性爬取 逐行爬取 for line in urllib.request.urlopen("http://www.b ...
- Python Requests库网络爬取全代码
#爬取京东商品全代码 import requestsurl = "http://item.jd.com/2967929.html"try: r = requests.get(url ...
- 正则爬取京东商品信息并打包成.exe可执行程序。
本文爬取内容,输入要搜索的关键字可自动爬取京东网站上相关商品的店铺名称,商品名称,价格,爬取100页(共100页) 代码如下: import requests import re # 请求头 head ...
- 正则爬取京东商品信息并打包成.exe可执行程序
本文爬取内容,输入要搜索的关键字可自动爬取京东网站上相关商品的店铺名称,商品名称,价格,爬取100页(共100页) 代码如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 ...
- requests+正则爬取猫眼电影前100
最近复习功课,日常码农生活. import requests from requests.exceptions import RequestException import re import jso ...
随机推荐
- smbms系统中引用的js文件出现乱码
问题如下显示: 时间显示出现了乱码,找到显示该时间的js文件,定位问题出现的地方. 解决方案: 改变该文件的编码方式,这里的使用了vscode进行改变js文件的编码方式 步骤如下: 使用vscode打 ...
- selenuim常用api
1.通过代码跳转到页面的方法:前提:已安装驱动,并加入到path下 安装ie驱动或火狐驱动的情况: 2.当链接跳转按钮在页面最上方时,用window.scrollTo(0,0);显示在页面最上方后,再 ...
- list列表(也叫数组),以及常用的一些方法
列表的表达: 元祖tuple,元祖是不可被修改的列表 1.列表的增,list.append(元素).或list.insert(index,元素) 2.列表的删,list.pop(可指定index也可不 ...
- os.walk模块查找目录下的所有txt文件
- goto 语法在 PHP 中的使用
在C++.Java及很多语言中,都存在着一个神奇的语法,就是goto.顾名思义,它的使用是直接去到某个地方.从代码的角度来说,也就是直接跳转到指定的地方.PHP中也有这个功能,我们先来看看它是如何使用 ...
- 人工智能顶级会议最佳论文里的“DaDianNao”是什么鬼?
最近对人工智能领域的 AI 加速芯片感兴趣,在翻阅 Google 的第一代 TPU 论文时,在相关工作中看到了 DaDianNao,PuDianNao,ShiDianNao.看的我一脸懵逼,这是什么? ...
- Gradle系列之从零搭建Maven私服库
原文发于微信公众号 jzman-blog,欢迎关注交流. 前面几篇文章学习了 Gradle 相关知识,Gradle 系列文章如下: Gradle系列之初识Gradle Gradle之Groovy基础篇 ...
- SSH 框架常见错误
新手学习SSH框架的时候总会遇到很多问题,一碰到404 或者500错误就不知道怎么解决. 404错误是很常见的一个错误,如果没有用框架基本上只可能是没有这个路径或者文件,但是用了框架之后404的原因就 ...
- Mysql的Windows安装
1,安装包下载, 这里我们使用压缩包安装方式,先进入Oracle官网,搜搜MySQL8.0,下载完成后选择一个磁盘放置,我选择放在D盘 2.安装教程 (1)配置环境变量 (2)生成data文件 用 ...
- Linux 文件系统之入门必看!
在 Linux 中,最直观.最可见的部分就是 文件系统(file system).下面我们就来一起探讨一下关于 Linux 中国的文件系统,系统调用以及文件系统实现背后的原理和思想.这些思想中有一些来 ...