2010-12-28 3 views
0

우리는 제품의 바코드를 읽고 8 개의 전자 상거래 사이트에서 가격을 얻는 모바일 응용 프로그램을 디자인하고 있습니다. 나는 모든 로직을 가지고 있고 웹 서비스에 의해 클라이언트에 데이터를 보내는 C#에 의한 웹 서버 측을 디자인하고있다.단어 일치 알고리즘

바코드를 보내서 제품 가격을 묻는다면 모든 것이 정상입니다. 그러나 대부분의 웹 사이트 시스템에는 데이터베이스에 바코드 번호가 없으므로 제품 이름을 보내야하며 제품 세부 정보를 다시 얻으려면 반드시 일치해야합니다.

제품 이름을 얻으려면 UPC 조회를 수행하고 웹 사이트에서 제품 이름을 가져옵니다.

하지만 그 순간부터 문제가 시작됩니다. 모든 전자 상거래 사이트는 다른 구조와 다른 제품 이름을 가질 수 있습니다. 나는 어떻게 전자 상거래 데이터베이스를 파싱하고 결과를 가져올 알고리즘을 쓸 것인가? 모든 전자 상거래 사이트마다 별도의 데이터 구문 분석기를 작성해야합니다. 쓸 수있는 알고리즘이 있습니까?

도움을 주시면 감사하겠습니다.

답변

0

문자열 배열의 제품 이름에있는 모든 단어를 전자 상거래 웹 사이트에 보내면 그들이 하나의 제품 결과를 얻고 나에게 그것을 돌려 줄 때까지 단어별로 데이터베이스 단어를 검색하십시오.

0

1- 하나의 해결책은 데이터베이스 테이블에 일반 제품 이름을 저장하여 서버 메모리에 정적 목록으로 저장하고 EOD에서 작업으로 목록을 업데이트 할 수 있도록하는 것입니다.

2 prodcutname을 제공하는 외부 웹 서비스를 찾아 웹 서비스에서 해당 서비스를 사용하십시오.

왜냐하면 각 웹 사이트를 방문하여 데이터를 분석 할 수 없기 때문입니다.

+0

내가 말했듯이 두 번째 선택은 불가능합니다. 다른 전자 상거래 사이트는 데이터베이스에 다른 이름을 가지고 있습니다. 첫 번째 선택은 어떻게 든 마누엘이고 내 솔루션을 최적화하지 않을 것입니다. 그래도 좋은 회신을 보내 주셔서 감사합니다. –

1

해당 파서를 작성해야합니다. 이 알고리즘이 작동해야하는 것 외에도 사용할 수있는 알고리즘이 있는지 의심 스럽습니다. (아마도 파서와 비슷합니다)