【问题标题】:Unix lynx in shell script to input data into website and grep resultshell脚本中的Unix lynx将数据输入网站和grep结果
【发布时间】:2014-12-17 19:29:30
【问题描述】:

这里是 unix shell 脚本的新手,我还有一些其他示例要查看,但仍然几乎从头开始尝试。我正在尝试跟踪我们公司的交付情况,并且我有一个要运行的脚本,该脚本会将跟踪号输入网站,然后将结果 grep 到文件中(已交付/未交付)。我可以使用 lynx 命令在命令行访问网站并查看结果,但在脚本中它只是返回网页,并没有输入跟踪号。

这是到目前为止我尝试过的代码:

#$1 = 1034548607
FNAME=`date +%y%m%d%H%M%S`

echo requiredmcpartno=$1 | lynx -accept_all_cookies -nolist -dump -post_data http://apps.yrcregional.com/shipmentStatus/track.do 2>&1 | tee $FNAME >/home/jschroff/log.lg

DLV=`grep "PRO" $FNAME | cut --delimiter=: --fields=2 | awk '{print $DLV}'`

echo $1 $DLV  > log.txt
rm $FNAME

我正在尝试获取跟踪号(他们称之为 PRO 号)1034548607 的结果。

【问题讨论】:

  • DLV 分配的第一部分是否产生了您期望的结果?即grep "PRO" $FNAME?考虑将该输出添加到您的问题中,否则我们只能猜测该数据的样子。祝你好运。
  • log.txt 文件的输出只是网站

标签: linux unix lynx


【解决方案1】:

尝试使用 执行此操作:

trackNumber=1234
curl -A Mozilla/5.0 -b cookies -c cookies -kLd "proNumber=$trackNumber" http://apps.yrcregional.com/shipmentStatus/track.do

但请验证 TOS 以了解您是否有权抓取此网站。

如果您想解析输出,请给我们一个示例 HTML 输出。

【讨论】:

猜你喜欢
  • 2012-06-30
  • 1970-01-01
  • 2011-08-21
  • 1970-01-01
  • 2012-09-18
  • 1970-01-01
  • 1970-01-01
  • 2018-02-27
  • 2018-12-10
相关资源
最近更新 更多