2011-08-14 13 views
10

से हाइपरलिंक यूआरएल प्राप्त करना मैं xlrd का उपयोग कर an Excel file पढ़ रहा हूं। एक कॉलम में मेरे पास एक कंपनी का नाम है जिसे हाइपरलिंक के रूप में स्वरूपित किया गया है (जिसका अर्थ है कि इसके पीछे एक यूआरएल है)। जब मुझे सेल वैल्यू मिलता है तो मुझे केवल कंपनी का नाम मिलता है। मैं इसके पीछे यूआरएल कैसे प्राप्त कर सकता हूं?एक्सेल दस्तावेज़

नीचे xlrd मॉड्यूल का उपयोग कर एक्सेल फ़ाइल पढ़ने के लिए कोड है (मान लें कि फ़ाइलें आयात की जाती हैं)।

mainData_book = xlrd.open_workbook("IEsummary.xls", formatting_info=True) 
mainData_sheet = mainData_book.sheet_by_index(0) # Get the first sheet 0 
start = 1 
end = 101 
for counter in range(start, end): 
    rowValues = mainData_sheet.row_values(counter, start_colx=0, end_colx=8) 
    company_name = rowValues[0] #how i can get link here also?? 
+0

कुछ कोड पोस्ट करें ताकि हम से जवाब देने के लिए एक आधार हो सकता है! और प्रासंगिक कीवर्ड शामिल करने के लिए शीर्षक को ठीक करने का प्रयास करें। – DGM

+1

@ आमिर अदनान ने एक उदाहरण फ़ाइल के लिए एक लिंक जोड़ा। क्या मैंने संरचना को सही तरीके से पकड़ लिया? इसे अपनी एक उदाहरण फ़ाइल के लिंक के साथ बदलने के लिए स्वतंत्र महसूस करें। – phihag

+0

@phihag: धन्यवाद, अब यह सवाल करने के लिए और अधिक समझ में आता है :) (मुझे नहीं पता कि मुझे इस सवाल पर नकारात्मक वोट क्यों मिला है, यह वास्तविक सवाल है, कृपया उदारता से मदद करें) –

उत्तर

8

xlrd 0.7.2 या नए में, आप hyperlink_map उपयोग कर सकते हैं:

import xlrd 
mainData_book = xlrd.open_workbook("IEsummary.xls", formatting_info=True) 
mainData_sheet = mainData_book.sheet_by_index(0) 
for row in range(1, 101): 
    rowValues = mainData_sheet.row_values(row, start_colx=0, end_colx=8) 
    company_name = rowValues[0] 

    link = mainData_sheet.hyperlink_map.get((row, 0)) 
    url = '(No URL)' if link is None else link.url_or_path 
    print(company_name.ljust(20) + ': ' + url) 
+0

जहां से मैं xlrd 0.7.2 संस्करण डाउनलोड कर सकता हूं? –

+0

@ अदरी अदनान मैंने 'svn सह https: // secure.simplistix.co.uk/svn/xlrd/trunk/'के साथ विकास संस्करण की जांच की। ऐसा लगता है कि 0.7.2 अभी तक जारी नहीं है। – phihag

+0

ठीक है, मैंने इसे svn से लिया है, आपकी मदद के लिए बहुत बहुत धन्यवाद। –