【问题标题】:Unable to Extract Encoded PDF data in jmeter by using regular expression extractor?无法使用正则表达式提取器在 jmeter 中提取编码的 PDF 数据?
【发布时间】:2019-09-06 16:06:27
【问题描述】:

我有一个 web 服务,它返回编码的 pdf,但是当我尝试使用正则表达式提取器 (JMeter) 提取其中的数据时,它不会提取。我检查变量的值,它显示空值。我用谷歌搜索了各种网站,但没有成功。提取数据后,我会将其保存到一个文件中。

我用谷歌搜索并参考了各种网站,但没有成功。下面是一些参考资料: https://dzone.com/articles/how-to-read-a-pdf-file-in-apache-jmeter https://www.blazemeter.com/blog/what-every-performance-tester-should-know-about-extracting-data-files-jmeter/

当我在调试采样器中看到时,我的变量中没有任何内容。

【问题讨论】:

    标签: jmeter


    【解决方案1】:

    如果您想将 PDF 文件中的文本提取到 JMeter Variable 中,唯一的方法是使用 JSR223 PostProcessorPDFBox

    1. 下载tika-app.jar并放到JMeter Classpath
    2. 重新启动 JMeter 以拾取 .jar
    3. 将 JSR223 PostProcessor 添加为返回 PDF 的请求的子项
    4. 将以下代码放入“脚本”区域:

      def handler = new org.apache.tika.sax.BodyContentHandler();
      def metadata = new org.apache.tika.metadata.Metadata();
      def inputstream = new ByteArrayInputStream(prev.getResponseData());
      def context = new org.apache.tika.parser.ParseContext();
      def pdfparser = new org.apache.tika.parser.pdf.PDFParser();
      pdfparser.parse(inputstream, handler, metadata, context);
      vars.put('pdfText', handler.toString())
      
    5. 就是这样,您应该将 PDF 文件中的文本设为 ${pdfText}JMeter 变量

    更多信息:

    【讨论】:

    • 不一定要让我知道,因为我非常确定该解决方案有效
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-29
    • 2015-05-28
    相关资源
    最近更新 更多