ব্যাচ ক্যোয়ারী ডেল পরিষেবা ট্যাগস


9

পরিষেবা ট্যাগগুলির তালিকার জন্য গুচ্ছ তথ্য পাওয়ার যে কোনও উপায় যে কেউ জানেন, ডেলের কি এর জন্য তাদের সাইটে কোনও বিভাগ আছে? আমি যে কোনও পার্ল / পাইথন লাইব্রেরি বা * নিক্স শেল স্ক্রিপ্টগুলির জন্য উন্মুক্ত।

এই মুহুর্তে আমি প্রতিটি ট্যাগের জন্য বেশিরভাগ তারিখ চাই।


আপনি ডেল থেকে "একগুচ্ছ তথ্য পেতে" জিজ্ঞাসা করার সময়, ঠিক কী বোঝাতে চাইছেন?
এগারোটি 1

ওয়্যারেন্টির শেষ তারিখটি এমন কিছু হবে যা আমি সন্ধান করব। শিপ ডেট এছাড়াও সুন্দর হবে।
ইভান অ্যান্ডারসন

একটি দ্রুত অনুসন্ধান আমাকে প্রচুর লোককে দিয়েছে যারা সার্ভিস ট্যাগের জন্য মেশিনগুলি জিজ্ঞাসা করতে চায় তবে ডেল ওয়েব সাইট অনুসন্ধান করার লোকদের সম্পর্কে খুব কম। স্পাইস ওয়ার্কস সার্ভিস ট্যাগটিকে ড্রাইভার ডাউনলোড পৃষ্ঠায় লিঙ্ক করে যা সার্ভিস ট্যাগটিকে URL টি আর্গুমেন্ট হিসাবে গ্রহণ করে। সেই পৃষ্ঠাটি থেকে "সিস্টেম কনফিগারেশন" পৃষ্ঠাতে নেভিগেশন, ঘুরে ফিরে, স্পাইস ওয়ার্কস দ্বারা সরবরাহিত পরিষেবা ট্যাগটি ব্যবহার করে (যদিও এটি এখন আর URL এ নেই)। দেখে মনে হচ্ছে আপনি কেবল এমন কোনও URL খুঁজে পাচ্ছেন না যা আপনি যে সার্ভিস ট্যাগটিতে পাস করতে পারবেন তাতে কিছু স্ক্রিন-স্ক্র্যাপ করতে পারে এমন কিছু এইচটিএমএল ফিরে আসবে। একটি করুণা। এটা সহজ হবে।
ইভান অ্যান্ডারসন

উত্তর:


19

প্রতিটি ট্যাগের জন্য নিম্নলিখিত URL টি (প্রকৃত পরিষেবা ট্যাগের সাথে শেষে এসভিসিটিএগ প্রতিস্থাপন) ডাউনলোড করুন:

http://support.dell.com/support/topics/global.aspx/support/my_systems_info/details?c=us&l=en&s=gen&ServiceTag=SVCTAG

আপনার আগ্রহী তথ্যের জন্য ফলাফলের পৃষ্ঠাটি পার্স করা পাঠকের জন্য অনুশীলন হিসাবে রেখে গেছে :-)


2
পৃষ্ঠার ফর্ম্যাটটি সম্প্রতি পরিবর্তিত হয়েছে এবং পার্স করা এখন আরও কঠিন difficult Xserv.dell.com/services/assetservice.asmx?WSDL এ একটি এপিআই উপলব্ধ আছে বলে মনে হচ্ছে । এটির অনুসন্ধানের জন্য দ্রুত স্ক্রিপ্ট: gist.github.com/1893036
ড্যানিয়েল

@ ড্যানিয়েল এই ওয়েব পরিষেবা এবং উদাহরণ স্ক্রিপ্ট হ'ল সেরা সমাধান আইএমও, এবং সম্ভবত এটি সুপরিচিত নয়। আপনার এটি যথাযথ উত্তর হিসাবে পোস্ট করা উচিত, আমি এটি +1 করব!
প্যাট্রিক

3

" আমার সিস্টেমগুলি " বিভাগে ডেল সমর্থন সাইটে আপনার সিস্টেমটি যুক্ত করুন । আপনি 100 টি পর্যন্ত সিস্টেম পরিচালনা করতে পারেন।

অবশ্যই ডেল সাইটে অবশ্যই আপনার অ্যাকাউন্ট আছে।

দুর্ভাগ্যক্রমে আমি কোনও ব্যাচ সিস্টেমটি সম্পর্কে কাজটি করতে পারি না, এমনকি যদি আপনি অবশ্যই লগইনটি করতে স্বয়ংক্রিয়ভাবে কার্ল, স্নোপি বা আপনার সাথে পরিচিত যা কিছু ব্যবহার করতে পারেন, তালিকাটি পুনরুদ্ধার করুন এবং ফলাফলগুলি বিশ্লেষণ করুন।


3

আমি জানি এটি একটি পুরানো পোস্ট, তবে আমি এটিতে বেশ কয়েকটি শালীন ঘন্টা ব্যয় করেছি এবং ভেবেছিলাম যে এটিকে ছড়িয়ে দেওয়া অন্য যে কোনও ব্যক্তিকে আমি সহায়তা করব। ডেলের নতুন সাইটটি সমস্ত জাভাস্ক্রিপ্ট এবং পরিষেবা ট্যাগের ডেটা অনুসন্ধান করার জন্য এটির বিরুদ্ধে কোড কীভাবে করব তা আমি বুঝতে পারি না। কিছু সময়ের পরে আমি পরিবর্তে তাদের মোবাইল সাইটটি ব্যবহার করার কথা ভেবেছিলাম (মোবাইল = কোনও জাভাস্ক্রিপ্ট নেই) এবং এটি প্রতিটি পরিষেবা ট্যাগে ডেটা টানতে পার্ল / এলডাব্লুপি ব্যবহার করে আমার পক্ষে কাজ করেছে। আমি পার্ল হ্যাকার, সুতরাং অন্য কেউ এটিকে আরও পরিষ্কারভাবে লিখতে সক্ষম হতে পারেন। নীচে আসল সিস্টেম কনফিগারেশন টান। ধারণাটি হ'ল প্রথম URL 'get' সার্ভিস ট্যাগের সাথে একটি কুকিকে টেনে তুলবে এবং দ্বিতীয় URL পেতে সার্ভিস ট্যাগ সম্পর্কে আপনার পছন্দসই ডেটা টেনে আনবে। তারপরে আপনি যে ডেটা সন্ধান করছেন তার জন্য দ্বিতীয় পেতে "$ উত্তর" পার্স করতে পারেন।

#!/usr/bin/perl

use strict;
use LWP::Simple;
use LWP::UserAgent;

my $inputfile  = $ARGV[0];

my ($url,$response,$answer);

open (DATA, $inputfile) or die "Can't open $inputfile \n";
foreach my $serviceTag (<DATA>)
{
   chomp $serviceTag;
   print "\n$serviceTag";

   ##### Allow Cookies
   my $browser = LWP::UserAgent->new;
   $browser->cookie_jar({});
   $browser->cookie_jar( HTTP::Cookies->new(
      'file' => 'cookies.lwp',  # where to read/write cookies
      'autosave' => 0           # do not save it to disk when done
   ));

   # declare agent as mozilla, not perl LWP
   $browser->agent("Mozilla/8.0");

   my $urlPartA = "http://m.dell.com/mt/www.dell.com/support/troubleshooting/us/en/19/Servicetag/";
   my $urlPartB = "?s=BIZ&un_jtt_redirect";
   my $firstURL = join('', $urlPartA,$serviceTag,$urlPartB);
   #print "\nURL = $firstURL";


   $url = URI->new("$firstURL");
   $response = $browser->get( $url );
   $answer = $response->content;
   #print "\nAnswer:\n$answer\n\n";

   $url = URI->new('http://m.dell.com/mt/www.dell.com/support/troubleshooting/us/en/555/TroubleShooting?name=TroubleShooting_SystemConfigurationTab');
   $response = $browser->get( $url );
   $answer = $response->content;
   #print "\nAnswer:\n$answer\n\n";
}

2

সার্ভিস ট্যাগ সাধারণত ক্রমিক সংখ্যার সাথে সাদৃশ্যপূর্ণ।

WMI Win32_BaseBoard.SerialNumber ক্লাসে এই তথ্য রয়েছে। গুগল "ডাব্লুআইএমআই সিরিয়াল নম্বর" এবং আপনি এই ডেটা পাওয়ার জন্য বেশ কয়েকটি উদাহরণ সমাধান পাবেন। সিরিয়াল নম্বর এবং অন্যান্য চাপিত অক্ষরগুলি ব্যবহার করে আমাদের ওয়ার্কস্টেশন হোস্টনাম হিসাবে বাক্সটির নামকরণের জন্য আমরা বিল্ড টাইম এ একটি স্ক্রিপ্ট ব্যবহার করি যা বিপুল সংখ্যক ক্লায়েন্টের সাথে সমস্যা সমাধানের সহজতর করে তোলে।


2
আমি মনে করি কাইলের ইতিমধ্যে পরিষেবা ট্যাগ রয়েছে। সে সার্ভিস ট্যাগ - ওয়ারেন্টি শেষের তারিখ, শিপিংয়ের তারিখ ইত্যাদির তথ্য পেতে ডেলের ওয়েবসাইটটি জানতে চায়
ইভান অ্যান্ডারসন

দুহ, আমি বোকা!
duffbeer703

2

আপনার পরিষেবা ট্যাগগুলি সংরক্ষণ করার জন্য ডেলের এখন বিকল্প রয়েছে। আপনার তাদের সাথে একটি লগইন তৈরি করা দরকার এবং এটিই হ'ল। এটিও দেখায় যে কোন সার্ভারের ওয়্যারেন্টিগুলি সমাপ্ত হচ্ছে এবং আপনি এটি থেকে রফতানি করতে পারেন।


1
#!/usr/bin/python

# dell_warranty.py v0.1
# Written by Frode Egeland <egeland[at]gmail.com> - Copyright 2009
# Released under the terms of the GNU GPL v3 - see http://www.gnu.org/licenses/gpl-3.0.html
#
# Version History
# 0.1 - 2009-10-12 - Frode Egeland - Initial version. Tested with a simple csv list of service tags only.
# 

import urllib2, csv, re
from BeautifulSoup import BeautifulSoup

url="http://support.dell.com/support/topics/global.aspx/support/my_systems_info/details?c=us&l=en&s=gen&ServiceTag=%s"

stlist = []

# generate a list of servicetags from a csv
csvfile = csv.reader(open('taglist.csv'))

for line in csvfile:
 for entry in line:
  stlist.append(entry)

fixdate = re.compile("(\d{1,2})\/(\d{1,2})\/(\d{4})")

print "Service Tag, Warranty Type, Provider, Start Date, End Date, Days Remaining"

for currtag in stlist:
 page = urllib2.urlopen(url % (currtag,))

 for line in page.readlines():
  if "Parts only Warranty" in line:
   soup = BeautifulSoup(line)
   break
 table = soup.find('table',{'class':"contract_table"})
 rows = table.findAll('tr')
 rows = rows[1:]
 for row in rows:
  output = "%s" % (currtag,)
  cells = row.findAll('td')
  for cell in cells:
   if cell.a: # link / formatted text
    txt = cell.a.string
   elif cell.b: # bold text
    txt = cell.b.string
   elif cell.i: # italic
    txt = cell.i.string
   else: #normal text
    txt = cell.string
   match = fixdate.search(txt)
   if match:
    txt = "%d-%d-%d" % (int(match.group(3)),int(match.group(1)),int(match.group(2)))
   output = "%s,%s" % (output,txt)
  output = output.strip()
  print output

1

আমি জানি এটি বেশ পুরানো থ্রেড (এটি কেবলমাত্র খুঁজে পেয়েছিলাম কারণ এটি একটি নতুন থেকে সংযুক্ত ছিল), তবে আপনি এই নাগিও প্লাগইনটি ব্যবহার করতে পারেন: নাগিও এক্সচেঞ্জ

python check_dell_warranty.py
OK: Service Tag: tag Warranty: Next Business Day, Provider: DELL, Start: 2010-02-24, End: 2013-02-25, Days left: 860 Warranty: NBD ProSupport For IT On-Site, Provider: DELL, Start: 2010-02-24, End: 2013-02-25, Days left: 860

স্ক্রিপ্টটি dmidecode ব্যবহার করে স্ট্যান্ডার্ড লোকালহোস্টের অনুসন্ধান করে। আপনি এটি এসএনএমপি ব্যবহার করে কোনও রিমোট হোস্টের বিরুদ্ধেও চালাতে পারেন বা আপনি এটি এনআরপিই থেকে চালাতে পারেন। বেশ সহজ।


-1
dmidecode -s system-serial-number

পরিষেবা ট্যাগটি ফিরিয়ে দেবে

আপনি এটি একটি ব্যাচে আপনার সমস্ত সিস্টেমে দূরবর্তীভাবে চালাতে ssh ব্যবহার করতে পারেন। ধরে নিচ্ছি তারা অবশ্যই চালাচ্ছে লিনাক্স


2
আমি মনে করি আপনি ভুল বোঝাবুঝি করছেন। কাইলের ইতিমধ্যে পরিষেবা ট্যাগ রয়েছে। সে সার্ভিস ট্যাগ সম্পর্কে তথ্য পেতে ডেলের ওয়েব সাইটটি জিজ্ঞাসা করতে চায়।
ইভান অ্যান্ডারসন

ইভান আমি যা করছি তার সম্পর্কে ঠিকই ...
কাইল ব্র্যান্ড্ট

ওহ, আমি তখন সংশোধন করছি :)
dyasny

আমি 'dmidecode' is not recognized as an internal or external command, operable program or batch file.আমার ডেল ল্যাপটপে উঠি ।
স্টারবিয়াম্রেনবোলাবস

তারপরে আপনার dmidecode ইনস্টল করতে হবে
dyasny

-1

আমার একটি অটো-এটি স্ক্রিপ্ট রয়েছে যা ডেল সমর্থন ওয়েবসাইটের পোলিং করে পরিষেবা ট্যাগের একটি তালিকা থেকে একটি সিএসভি ফাইল তৈরি করে।

অন্যান্য তথ্য নিষ্কাশন করতে এবং সেগুলিকে সিএসভি ফর্ম্যাটে রাখতে আপনি একই যুক্তিটি অনুসরণ করতে পারেন

http://fei-automation.blogspot.hk/2014/09/how-to-check-model-for-list-of-dell-pc.html


-1

দ্রষ্টব্য: এটি এই উত্তরটির সম্পাদিত পোস্ট

ডেল সম্প্রতি তাদের ওয়েবসাইট পরিবর্তন করেছে।

এই পরিবর্তনের জন্য অনুমতি দেওয়ার জন্য আমি উপরের পার্ল স্ক্রিপ্টটি আপডেট করেছি।

আমি কেবলমাত্র প্রতিটি মেশিনের শিপিংয়ের তারিখগুলিকে একটি পাঠ্য ফাইলে ডাম্প করতে আগ্রহী ছিলাম তবে কেবল এটি বিশ্লেষণ করা হয়েছে তবে আমি নিশ্চিত যে আপনার পছন্দসই ডেটা ধরতে কোডটি সহজেই সংশোধন করা যেতে পারে।

===

#!/usr/bin/perl

use strict;
use LWP::Simple;
use LWP::UserAgent;
use Mojo::DOM;

my $inputfile  = $ARGV[0];

my ($url,$response,$html);
my $outputfile = "result.txt";
open (DATA, $inputfile) or die "Can't open $inputfile \n";
open OUTPUT, ">>".$outputfile or die "Could not open '$outputfile'\n";
foreach my $serviceTag (<DATA>)
{
   chomp $serviceTag;
   print "\n$serviceTag\n";
   print OUTPUT $serviceTag."\t";
   ##### Allow Cookies
   my $browser = LWP::UserAgent->new;
   $browser->cookie_jar({});
   $browser->cookie_jar( HTTP::Cookies->new(
      'file' => 'cookies.lwp',  # where to read/write cookies
      'autosave' => 0           # do not save it to disk when done
   ));

   # declare agent as mozilla, not perl LWP
   $browser->agent("Mozilla/8.0");
    #    
   my $urlPartA = "http://www.dell.com/support/home/us/en/19/product-support/servicetag/";
    #   configuration
   my $urlPartB = "/configuration";
   my $firstURL = join('', $urlPartA,$serviceTag,$urlPartB);
   #print "\nURL = $firstURL";

   $url = URI->new("$firstURL");
   $response = $browser->get( $url );
   $html = $response->content;
   #print "\nAnswer:\n$html\n\n";

   my @values;
   my $dom = Mojo::DOM->new;
   $dom->parse($html);
   my $skip;
   for my $dd ($dom->find('div.col-lg-4.col-md-4.col-sm-3.col-xs-6')->each) {
    push(@values, $dd->text) if $skip++;
    #print $dd->text, "\n" if $skip++;
   }
    print $values[1]."\n";
    if ( $values[1] =~ m/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/ )

    {   # format date better for Excel
        #print OUTPUT $values[1]."\n";
        print OUTPUT "$3-$1-$2\n";
    }

    print $values[1]."\n";
    print "$3-$1-$2\n";
}


close OUTPUT or die $!;

2
মূল উত্তরের একটি সম্পাদনা হওয়া উচিত।
হরিণ হান্টার
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.