免费的:免费网络爬虫软件,有哪些免费好用的爬虫软件值得推荐
优采云 发布时间: 2022-12-06 04:34免费的:免费网络爬虫软件,有哪些免费好用的爬虫软件值得推荐
这里有2款简单易用的免费爬虫软件——优采云采集器和优采云采集器。采集这两个软件的网页数据都很简单,不需要写任何代码,只需要用鼠标点击需要采集的网页信息,和采集 会自动启动,非常方便。下面简单介绍一下这两款软件的安装和使用:
优采云采集器
1. 首先,下载并安装优采云采集器。这个可以直接从官网下载。它是完全免费的。每个平台都有版本。选择适合自己平台的版本即可,如下:
2、安装完成后,打开软件,直接输入需要采集的网页地址,会自动打开网页并识别需要采集的信息。这里以采集58的同城出租信息为例,如下,很简单,不用自己动手,这里也可以编辑、删除或修改自动采集的信息:
3、最后点击右下角“启动采集”,设置“定时启动”,如下,软件会自动启动采集数据,自动翻页,无需手动设置:
4、采集的数据如下,只是为了标识需要采集的网页信息。运行速度非常快。您还可以随时暂停或停止,非常方便:
5、最后点击“导出数据”按钮,将数据导出为你需要的文件格式,如Excel、CSV、HTML、数据库等,或者导出到网站,如下:
优采云采集器
1、首先下载安装优采云采集器,这个也可以直接从官网下载,如下,也是免费的,目前只有Windows平台:
2、安装完成后,打开软件,进入主界面。这里我们选择“自定义采集”,如下:
3、然后输入我们需要的网页地址信息采集,它会自动跳转到相应的页面。这里我们以采集大众点评的评论信息为例,如下:
4、此时可以直接点击需要采集的网页信息,按照操作提示一步步往下走。非常简单易行,如下:
5、最后点击采集数据,启动本地采集,会自动启动采集数据,如下,已经成功采集到我们需要的网页信息:
这里也可以点击“导出数据”,将采集数据保存成你需要的数据格式,如下:
至此,优采云采集器和优采云采集器两款爬虫软件就介绍到这里了。总的来说,这两款软件都非常好用。只要熟悉操作环境,就能很快掌握使用。当然你也可以使用其他的爬虫软件,比如优采云采集器等也可以。网上也有相关的教程和资料。如果您有兴趣,可以搜索它们。希望以上分享的内容能够对您有所帮助。欢迎评论和留言。
Uibot实现免费网络爬虫
一直关注网络爬虫,希望能找到一种免费、简单的爬虫实现方式。无意中看到uibot网站的介绍,发现操作门槛极低,而且免费使用(社区版);
1、自行下载百度uibot。它的官方网站是这样的。点击立即下载进入注册页面,然后可以看到win(32位)、win(64位)、linux 3个版本的下载选项,可以根据自己的机器选择。
uibot官网
2.软件使用
011.启动uibot
在本地下载安装后,打开软件界面如下图。Uibot会有一个简单的教程,很有帮助。推荐阅读。
022.创建脚本
2.1 选择新建按钮,输入脚本名称进入配置页面,双击图中红色流程块
2.2 在流程块中添加执行的流程命令
启动浏览器
打开指定页面
抓取当前列表页数据的样本
uibot支持翻页和抓取,大家可以自己试试
在本地配置爬虫数据存储
UIbot 支持包括数据库在内的多种数据存储方式。本文以excel为例,提前在电脑上创建一个空的Excel文件。
然后在左侧树形菜单中找到并打开excel文件,如下图
将爬取的数据写入本地Excel文件
03 保存,执行抓取
非常方便简单,比自己写代码抓取方便多了。
分享文章:微信公众号文章全自动采集(使用mitmproxy抓包
本文章仅供学习和参考
因为微信的 cookie 和app_msg会过期
该文章主要提供自动访问 cookie 和app_msg的过程
获取Cookie和app_msg,轻松实现公众号自动采集
您只需要先登录微信电脑
一。当前流程
1、使用微信公众平台扫码登录,获取公众号历史文章链接
2. 打开代理
3、使用pywinauto模块自动将公众号文章URL发送到文件传输助手点击,从而获取微信PC的cookie和appmsg_token
二。实现
第一步网上有很多教程,这里就不多说了
主要需要实现mitmproxy自动抓包和微信PC自动点击
中间代理自动数据包捕获:
创建write_cookies.py
import urllib
import sys
from mitmproxy import ctx
from mitmproxy import io, http
# command: mitmdump -s write_cookies.py -w dat mp.weixin.qq.com/mp/getappmsgext
class WriterCookie:
"""
mitmproxy的*敏*感*词*脚本,写入cookie和url到文件
"""
def __init__(self,outfile: str) -> None:
self.f = open(outfile, "w")
def response(self, flow: http.HTTPFlow) -> None:
"""
完整的response响应
:param flow: flow实例,
"""
# 获取url
url = urllib.parse.unquote(flow.request.url)
# 将url和cookie写入文件
if "mp.weixin.qq.com/mp/getappmsgext" in url:
self.f.write(url + '\n')
self.f.write(str(flow.request.cookies))
self.f.close()
# 退出
exit()
# 第四个命令中的参数
addons = [WriterCookie(sys.argv[4])]
''
然后创建get_wechat_cookies.py文件
打开.bat文件
@echo off
echo 开始设置IE代理上网
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable /t REG_DWORD /d 1 /f
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyServer /d "127.0.0.1:8080" /f
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyOverride /t REG_SZ /d "" /f
echo 代理设置完成按任意键关闭
关闭.bat
@echo off
echo 开始清除IE代理设置
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable /t REG_DWORD /d 0 /f
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyServer /d "" /f
reg delete "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyOverride /f
echo IE代理清楚完成按任意键关闭
import re
import os
from wechat_auto import auto_play_wechat
import threading
import time
<p>
class ReadCookie(object):
"""
启动write_cookie.py 和 解析cookie文件,
"""
def __init__(self,outfile):
self.outfile = outfile
print(self.outfile)
def parse_cookie(self):
"""
解析cookie
:return: appmsg_token, biz, cookie_str·
"""
with open(self.outfile) as f:
data = f.read()
appmsg_token_string = re.findall("appmsg_token.+?&", data)[0].split('=')[1]
cookies = re.findall(r"\['(.*?)'\]", data)
Wechat_cookies = {}
for cookie in cookies:
cookie = cookie.split("', '")
Wechat_cookies[cookie[0]] = cookie[1]
return appmsg_token_string,Wechat_cookies
def write_cookie(self):
"""
启动 write_cookies。py
:return:
"""
#当前文件路径
path = os.path.split(os.path.realpath(__file__))[0]
#path = os.getcwd()
print(path)
# mitmdump -s 执行脚本 -w 保存到文件 本命令
command = "mitmdump -s {}/write_cookies.py -w {} mp.weixin.qq.com/mp/getappmsgext".format(
path,self.outfile)
os.system(command)
class MyThread(threading.Thread):
def __init__(self, func, args=()):
super(MyThread, self).__init__()
self.func = func
self.args = args
def run(self):
time.sleep(2)
self.result = self.func(*self.args)
def get_result(self):
threading.Thread.join(self) # 等待线程执行完毕
try:
return self.result
except Exception:
return None
def get_cookie():
os.system('open.bat')
rc = ReadCookie('cookie.txt')
rc.write_cookie()
os.system('close.bat')
appmsg_token_string, cookies = rc.parse_cookie()
return appmsg_token_string, cookies
url='https://mp.weixin.qq.com/s?__biz=MjM5MjAxNDM4MA==&mid=2666430514&idx=2&sn=effd2a2e000791d6ac52451dc81223d9&chksm=bdb6e9718ac1606710570156d51879e0b2dcf1351bf9a0eea8002b59f74808ff218e17eae6de#rd'
def get_result(url):
more_th1 = MyThread(get_cookie)
more_th2 = MyThread(auto_play_wechat, args=(url,))
more_th1.start()
more_th2.start()
more_th1.join()
more_th2.join()
appmsg_token_string = more_th1.get_result()[0]
cookies = more_th1.get_result()[1]
return appmsg_token_string,cookies
get_result(url)
</p>
微信在文件传输助手中自动发送网址
wechat_auto.py可以自动发送和单击此文件
import time
import psutil
from pywinauto.application import Application
from time import sleep
from pywinauto import mouse
from pywinauto.keyboard import send_keys
from pywinauto import keyboard
# 常用方式一:连接已有微信进程(进程号在 任务管理器-详细信息 可以查看)
def GetWeChatPID(name):
# 获得全部进程的ID
# pids=psutil.pids()
pids = psutil.process_iter()
# 遍历全部进程ID
for pid in pids:
if(pid.name()==name):
# 输出进程ID
return pid.pid
# 没有找到则输出0
return print('请打开微信')
def auto_play_wechat(url):
pid = GetWeChatPID('WeChat.exe')
app = Application(backend='uia').connect(process=pid)
# 拿到微信主窗口
win_main_Dialog = app.window(class_name='WeChatMainWndForPC')
win = app[u'微信']
# 将窗口最大化
win.maximize()
search = win_main_Dialog.child_window(title=u"搜索", control_type="Edit")
# 获得搜索框的位置信息
search_cords = search.rectangle()
mouse.click(button='left', coords=(search_cords.left + 100, search_cords.top + 10))
mouse.click(button='left', coords=(search_cords.left + 100, search_cords.top + 10))
mouse.click(button='left', coords=(search_cords.left + 100, search_cords.top + 10))
# 输入名称文件传输助手
send_keys('文件传输助手')
time.sleep(2)
# 按Enter键,进入聊天界面
send_keys('{ENTER}')
send_keys(url)
send_keys('{ENTER}')
mes = win_main_Dialog.child_window(title=u"消息", control_type="List")
mes_list = mes.items()
for i,mes in enumerate(mes_list):
text = url.split('mp.weixin.qq.com')[1]
if text in str(mes):
text_cord = mes.rectangle()
mouse.click(coords=(text_cord.left+ 1500, text_cord.top + 20))
#最小化
win.minimize()
sleep(2)
win_main_Dialog.minimize()
#auto_play_wechat('http://mp.weixin.qq.com/s?__biz=MjM5NTE1OTQyMQ==&mid=2650952200&idx=1&sn=b4302c5fd6fb356c71e561c5dc8bda7f&chksm=bd0a3e1a8a7db70c010d2ebdeec37432f303ead76e2ededfd34245414dcbf90e22093a04b7cc#rd')
创建上述三个文件后,运行get_wechat_cookies.py
您可以获取进入官方帐户的app_msg和cookie文章
当app_msg和cookie过期时,最好自动获取它们,这样您就可以完全自动化在公众号上采集喜欢和评论文章
所有代码都是
不放了,这里已经给出了自动获取app_msg和cookie代码,后者实现起来非常简单