use Net::SMTP;
use LWP::UserAgent;
use HTTP::Cookies;
use HTTP::Headers;
use HTTP::Response;
use Encode;
use Switch;
use File::Temp qw/tempfile/;
use HTTP::Date qw(time2iso str2time time2iso time2isoz);
my $CurrTime = time2iso( time() );
my $dis_mainpublish = '中均资本';
my $ua = LWP::UserAgent->new( ssl_opts => {verify_hostname => 0});
$ua->timeout(10);
$ua->env_proxy;
my $now = time();
$ua->agent('Mozilla/5.0');
my $cookie_jar = HTTP::Cookies->new(
file => 'lwp_cookies.txt',
autosave => 1,
ignore_discard => 1
);
$ua->cookie_jar($cookie_jar);
my $str = ( rand(1) );
##获取验证码https://www.zjtest4.com/validcode/generate-validcode.do
my $response =
$ua->get("https://www.zjtest4.com/validcode/generate-validcode.do?$str");
print "\$str is $str\n"; if ( $response->is_success ) {
$r = $response->decoded_content; # print $response->decoded_content; # or whatever
}
else {
die $response->status_line;
} my ( $fh, $filename ) =
tempfile( "wj_qrcode_XXXX", SUFFIX => ".jpg", DIR => 'c:\\' );
binmode $fh;
print $fh $r;
close $fh;
print encode( "gbk", decode( "utf8","登录二维码已经下载到本地")) ."[ $filename ] \n"; ##打开图片
system("start $filename "); my $validCode = <STDIN>;
chomp $validCode;
print "\$validCode is $validCode\n"; #my $url="https://www.zjtest4.com/business/dispatch_post.do"; my $login_url = 'https://www.zjtest4.com/business/dispatch_post.do?action=submitAdminLogin'; my $res = $ua->post(
$login_url,
{ 'userName' => 'w123456',
'userPass1' => 'w123456',
'userPass' => '3d24b838770ee90773804e8599e549ff',
'validCode' => "$validCode"
}
);
my $head = $res->header('Location');
#print $res->header('Location');
print $res->status_line . "\n";
#print $res->as_string()
; #获取的是原始内容,包括响应头,响应正文
my $content = $res->content(); my $response = $ua->get("$head");
if ( $response->is_success ) {
#print $response->content;
$r = $response->content;
my $str = encode( "gbk", decode( "utf8", "$r" ) );
print "\login_info is $str\n"; }
else {
$r = $response->content;
print $response->content;
} ###调用发布产品接口
my $url="https://www.zjtest4.com/web/adminauth/post";
my $res = $ua->post(
$url,
{ 'accessType' => '1',
'addUnit' => '1000',
'assignType' => '1',
'bonus' => "0",
'bonusName' => "请选择红包类型",
'borrowerInfo' => "scan",
'buyAcctTypes' => "1",
'buyFromTime' => "2016-07-27 12:01",
'buyToTime' => "2016-07-28 23:59:59",
'capitalPurpose' => "",
'compound' => "2",
'contractSn' => "340",
'custody' => "scan",
'daysOfYear' => "360",
'delegator' => "3",
'duration' => "3",
'entryUnit' => "1000",
'expirationDate' => "2015-1-31",
'financeType' => "1",
'initSoldQuota' => "1000",
'entryUnit' => "0",
'isOnlyForFirst' => "1",
'manualSn' => "0",
'maxClient' => "0",
'maxUnit' => "10000",
'maxYield' => "0.03",
'method' => "/admin/product/publish",
'name' => "温金宝-987654321",
'entryUnit' => "1000",
'entryUnit' => "1000",
'entryUnit' => "1000",
'entryUnit' => "1000",
'entryUnit' => "1000",
'entryUnit' => "1000",
'entryUnit' => "1000",
'entryUnit' => "1000",
'entryUnit' => "1000",
'naturalSeasonRepaymentDay'=>'1',
'precision'=>'2',
'productId'=>'99999999',
'productIntro'=>'scan',
'productPublishType'=>'2',
'productType'=>'4',
'publishChannel'=>'3001',
'quotaForFirst'=>'100000',
'recommendDate'=>'2016-07-27',
'repaySource'=>'scan',
'riskInfo'=>'scan',
'riskLevel'=>'1',
'safeguard'=>'1',
'settlementDate'=>'2016-08-01',
'stageNum'=>'1',
'stagingTemplateId'=>'',
'stairYieldSn'=>'',
'stockAwardYield'=>'0',
'supportCouponType'=>'2',
'supportStock'=>'2',
'supportTransfer'=>'2',
'totalQuota'=>'100000000',
'unitValue'=>'1',
'valueEndDate'=>'2016-07-31',
'valueStartDate'=>'2016-07-29',
'wzeCardYield'=>'0',
'wzeCardYieldOnOff'=>'2',
'yield'=>'0.02',
'yieldForFirst'=>'0.01' }, 'User-Agent'=>'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Firefox/45.0' );
print $res->header('Location');
print $res->status_line."\n";
my $str= $res->as_string();#获取的是原始内容,包括响应头,响应正文

perl 自动发产品的更多相关文章

  1. PHP自动发邮件

    自动发邮件 使用了这个类http://bbs.php100.com/read-htm-tid-121431.html 因他用的php版本较老,用到了函数ereg_replace() 和 ereg() ...

  2. C蛮的全栈之路-node篇(二) 实战一:自动发博客

    目录 C蛮的全栈之路-序章 技术栈选择与全栈工程师C蛮的全栈之路-node篇(一) 环境布置C蛮的全栈之路-node篇(二) 实战一:自动发博客 ---------------- 我是分割线 ---- ...

  3. QQ空间自动发广告解决方法

    最近空间好多人QQ都中了毒.每天我都有几十个好友刷空间话费.流量广告! QQ空间自动发广告的原因: 最近使用了刷赞或者其他QQ外挂软件(有些开发者或破解者会在这样的软件上留后门,请自己判断). 或者最 ...

  4. python自动发邮件库yagmail

    #### 一般发邮件方法 我以前在通过Python实现自动化邮件功能的时候是这样的: import smtplib from email.mime.text import MIMEText from ...

  5. java windows自动化-mail自动发邮件

    本文旨在让测试人员了解如何发邮件 发邮件的话,最简单的事是直接手动发邮件,但是在自动化测试中,应做到让机器或者代码来自动发送邮件,笔者大概了解以下几种方法,总有一款口味适合你:1java代码来做下面即 ...

  6. python自动发邮件

    from email.header import Header from email.mime.text import MIMEText from email.utils import parsead ...

  7. jira6.3.6创建问题不自动发邮件通知的问题

    装完jira6.3.6后,设置好邮件服务器,测试没有问题.但是创建问题不自动发邮件提示用户.折腾了大半天,请教了一位大神,终于搞定.步骤是: agile->系统->用户界面->用户缺 ...

  8. redmine创建新闻,自动发邮件给项目组所有成员

    redmine创建新闻,自动发邮件给项目组所有成员: 1.添加用户至公共项目内 2.配置系统邮件推送配置 3.检查用户接受推送配置 3.使用管理员账户发布新闻(不能自己发送自己) 4.查看邮件接受邮件

  9. python自动发邮件库yagmail(转)

    一般发邮件方法 我以前在通过Python实现自动化邮件功能的时候是这样的: import smtplib from email.mime.text import MIMEText from email ...

随机推荐

  1. JavaScript中你可能不知道的九件事

    今天凑巧去W3School扫了一遍JavaScript教程,发现从中看到了不少自己曾经没有注意过的细节. 我这些细节列在这里.分享给可能相同不知道的朋友: 1.使用 document.write() ...

  2. Android 之窗口小部件高级篇--App Widget 之 RemoteViews - 跨到对岸去

    在之前的一篇博文( Android 之窗口小部件详解--App Widge t)中,已经介绍了App Widget的基本用法和简单实例.这篇主要讲解 App Widget 的高级内容,即通过 Remo ...

  3. JavaMail收发邮件的一般流程与主要方法

    1.Properties属性类 Properties p = new Properties(); p.put(key, value); key -| mail.smtp.host -| mail.sm ...

  4. Android核心基础

    第三代移动通讯技术(3rd Generation) ,支持高速数据传输的蜂窝移动通讯技术.3G与2G的主要区别是传输数据的速度. 1987年,第一台模拟制式手机(1G)问世,只能进行语音通话,型号:摩 ...

  5. AWT和Swing

    布局分类 一.流式布局 二.边界布局 三.网格布局 四.卡片布局 五.坐标式布局 随意布置控件位置. 六.混合布局

  6. C++标准程序库的输入输出流(I/O Stream)复制文件(4种方法)

    使用C++标准程序库的输入输出流(I/O   Stream)复制文件,存在许多的方法, 方法一:逐个字符复制#include   <   fstream   > std::ifstream ...

  7. 转:命令和查询责任分离(CQRS)架构模式

    读了“蓝皮书”距今差不多一年,它改变了我的软件开发和构建软件架构观.在我作为一名程序员期间,我尝试了许多不同的方式来构建软件.方法有很多,包括一个贫血的域模型(Anemic Domain Model) ...

  8. html文件中文在浏览器中显示乱码问题解决

    利用浏览器打开html文件时,中文显示乱码,如下是原文件的内容 1 <html>   2         <head>   3             <title> ...

  9. 笔试题引出float数据的存储方式的深究

    笔试题: #include <iostream>#include <stdio.h>#include <string.h>#include <conio.h& ...

  10. Qt WebKit and HTML5 geolocation | Qt Project forums | Qt Project

    Qt WebKit and HTML5 geolocation | Qt Project forums | Qt Project Qt WebKit and HTML5 geolocation   I ...