当前位置: 首页 > news >正文

做非洲国际贸易网站微信小程序制作网站

做非洲国际贸易网站,微信小程序制作网站,自己创建网站怎么得流量钱,免费引流app下载这篇博客将详细说明如何从 Java 应用程序调用一个 Python 脚本#xff0c;并在此过程中传递参数给一个 Scrapy 爬虫。最终目标是让 Java 控制爬虫的行为#xff0c;如爬取数量和特定的运行参数。 一、Scrapy 爬虫的修改 首先#xff0c;我们需要确保 Scrapy 爬虫能接收从命…这篇博客将详细说明如何从 Java 应用程序调用一个 Python 脚本并在此过程中传递参数给一个 Scrapy 爬虫。最终目标是让 Java 控制爬虫的行为如爬取数量和特定的运行参数。 一、Scrapy 爬虫的修改 首先我们需要确保 Scrapy 爬虫能接收从命令行传递的参数。这涉及到修改 Scrapy 的启动文件和爬虫文件。 创建 Python 启动脚本 run.py 这个脚本负责解析从 Java 传来的命令行参数并将其传递给 Scrapy 爬虫。 # run.py import sys from scrapy import cmdlineif __name__ __main__:# 接受从外部传入的参数# spider_name sys.argv[1] # 爬虫名称# token sys.argv[2] # 接受令牌# num sys.argv[3] # 接受数字参数# map_json sys.argv[4] # 接受JSON格式的字典# 测试数据spider_name pictoken 123num 100map_json {a: 1, b: 2}# 构建 Scrapy 命令command [scrapy, crawl, spider_name,-a, ftoken{token},-a, fnum{num},-a, fmap{map_json}]cmdline.execute(command)修改 Scrapy 爬虫以使用这些参数 # pic_spider.py import scrapy import jsonclass PicSpider(scrapy.Spider):彼岸图网站图片爬虫https://pic.netbian.com/name pic# allowed_domains [netbian.com]start_urls [https://pic.netbian.com//]def __init__(self, tokenNone, numNone, java_mapNone, *args, **kwargs):super(PicSpider, self).__init__(*args, **kwargs)self.token tokenself.num int(num) if num else 100 # 接收数字并提供默认值self.map json.loads(java_map) if java_map else {} # 正确的条件检查def parse(self, resp, **kwargs):print(resp.text)二、Java 端的实现 在 Java 端需要构建一个命令行字符串并使用 Runtime.exec() 来调用 Python 脚本。 import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.HashMap; import java.util.Map;public class RunScrapyFromJava {public static void main(String[] args) {try {String pythonScriptPath path/to/run.py;String spiderName pic;String token some_token;int num 100;MapString, Object map new HashMap();map.put(key1, value1);map.put(key2, value2);String jsonMap new Gson().toJson(map);if (jsonMap.isEmpty()) {jsonMap {}; // 确保总是传递一个 JSON 字符串}// 构建命令String command String.format(python %s %s %s %d %s,pythonScriptPath, spiderName, token, num, jsonMap);Process p Runtime.getRuntime().exec(command);p.waitFor();BufferedReader reader new BufferedReader(new InputStreamReader(p.getInputStream()));String line;while ((line reader.readLine()) ! null) {System.out.println(line);}} catch (Exception e) {e.printStackTrace();}} }总结 这个过程实现了从 Java 端通过 Python 启动脚本向 Scrapy 爬虫动态传递参数使得爬虫行为可以根据外部输入进行调整。此方法适用于需要从 Java 控制 Python 爬虫的场景如企业应用中的数据采集任务。
http://www.dnsts.com.cn/news/157159.html

相关文章:

  • 十堰网站优化排名外链 推网站怎么做
  • 用软件做模板下载网站做网站多久
  • 网站套利怎么做平台托管是什么意思
  • 网站的优化方案怎么写怎么给网站做短信
  • 有人模仿qq音乐做的h5网站吗常德地区网站建设
  • ppt模板网站开发网站架构分类
  • 国外网站建设官网室内设计师多少钱一个月
  • 网站解析后怎么解决方法我市强化属地网站建设
  • 做个免费的网站网站开发g
  • 做图标得英文网站食品网站源码
  • 做网站绑定 对应的域名企业网站推广效果从哪些方面进行分析
  • 交易所网站建设教程郑州购物网站建设
  • 推广网站2024别人不能注册我的wordpress站
  • 蜘蛛互联网站建设企业年报网上申报流程
  • 在哪里买空间做网站北京网站建设制作方案
  • 佛山营销型网站建设公司中小企业有哪些公司
  • wordpress 显示备案网站内部结构优化
  • 网站上怎么做艳丽的色微盟做一个小程序大概多少钱
  • 做酒店管理网站的作用明星粉丝网站怎么做的
  • 网站建设前端工程师岗位职责wordpress建娱乐站
  • wordpress建站菜单栏 二级标题乡下房屋室内装修
  • 温州cms模板建站鹤壁市城乡一体化示范区范围
  • centos。wordpressseo是什么?
  • ps企业网站模板ui网页设计培训学校
  • 苏中建设官方网站跨国贸易平台有哪些
  • flask做的网站 网址代码演示插件wordpress
  • 规划一个电子商务网站404 重定向 wordpress
  • 建设银行国管公积金管理中心网站详情页制作网站
  • 深圳网站建设中为注册了域名 网站怎么做
  • 网站广告下悬浮代码怎么做如何制作一个软件